2009-10-30 5 views
3

J'essaye d'intercepter les commandes DELETE sur une table particulière. MySQL prend en charge les déclencheurs, mais il ne semble pas possible de générer une erreur, tout comme SQL Server et d'autres bases de données. Est-ce que je peux faire ceci avec juste une définition Trigger vide? Quelque chose comme:Arrêt d'une suppression sur MySQL via les triggers

create trigger trListsDelete on lists 
instead of delete 
as 
begin 
    /* Do nothing */ 
end 

Dans SQL Server je pourrais ajouter une déclaration RAISEERROR('You cannot delete lists.') pour le forcer à l'échec et de cette façon, je sais que la suppression ne serait pas exécuté. Puisque MySQL ne supporte pas les erreurs, comment ignorer simplement la commande Delete?

+1

On dirait un double de http://stackoverflow.com/questions/24/throw-error-in-mysql-trigger (augmentation erreur sur la mise à jour plutôt que de supprimer). –

Répondre