2016-11-21 5 views
0

ich einen neuen Trigger zu schreiben, ich bin sicher, dass es in Ordnung ist, aber ich erhalte diese Störung, wenn ich versuche, so der SQL-Befehl:Fehler nach DELETE-Trigger

CREATE TRIGGER tax_delete 
    AFTER DELETE ON cashflow FOR EACH ROW 
    BEGIN 
     DELETE FROM tax_cashflow 
     WHERE tax_cashflow.id_user = OLD.id_user 
     AND tax_cashflow.id_orig = OLD.id_orig 
     AND tax_cashflow.id_orig_user = OLD.id_orig_user; 
    END; 

1064 - Sie haben einen Fehler in Ihrer SQL-Syntax. Sie in die Bedienungsanleitung zu Ihrer MySQL-Server-Version für die richtige Syntax entspricht in Zeile in der Nähe von ‚‘ verwenden 7

Kann jemand mir helfen, zu verstehen, wo der Fehler ist? Dank

+1

Sie haben keinen Raum zwischen ANDtax ein Tippfehler ist? – scaisEdge

+0

und wenn Sie nur eine Anweisung im Trigger haben, lassen Sie die 'BEGIN' und' END' weg. Oder verwenden Sie ein anderes Trennzeichen. – fancyPants

+0

keine Leerzeichen zwischen den Wörtern ist nur ein Fehler bei der Abfrage. Ich weiß nicht, wie andere Trennzeichen kann ich verwenden – Stefania

Antwort

0

versuchen diese

DELIMITER //  

create TRIGGER tax_delete 
AFTER DELETE ON cashflow FOR EACH ROW 
BEGIN 
DELETE FROM tax_cashflow 
WHERE tax_cashflow.id_user = OLD.id_user 
AND tax_cashflow.id_orig = OLD.id_orig 
AND tax_cashflow.id_orig_user = OLD.id_orig_user; 

END; // 

DELIMITER ;