2010-12-14 7 views
-1

Ich habe einen einfachen Trigger geschrieben, aber es wirft Fehler auf, die ich nicht bekomme. Heres meine Trigger:Kann nicht funktionieren, um MySQL Trigger zu arbeiten

CREATE TRIGGER logSlette After DELETE on ansatte 
for each row 
begin 
insert into slettede_ansatte set AnsattID=old.AnsattID,slettet=now() 
end; 

Die Anweisung create table für die Tabelle:

CREATE TABLE slettede_Ansatte 
(
AnsattID Integer(4) NOT NULL, 
slettet TIME NOT NULL, 
CONSTRAINT Ansatte_PK Primary Key(AnsattID) 
) ENGINE=INNODB; 
+0

Welche Fehler gibt es? – David

+0

Es heißt "SQL Syntax Fehler nahe 'Ende';" –

Antwort

0

(überarbeitet)

Die correct syntax ist

CREATE TRIGGER logSlette AFTER DELETE ON ansatte 
    FOR EACH ROW 
    BEGIN 
    INSERT INTO slettede_ansatte 
     SET AnsattID = OLD.AnsattID, 
      slettet=now(); 
    END; 

Vielleicht ist es das fehlende Semikolon ?

+0

Löse es nicht für mich –

+2

Sie müssen zuerst das Trennzeichen ändern - das Semikolon schließt die CREATE TRIGGER-Anweisung (zu schnell) sonst. – Konerak

+0

Ich benutze MySQL Workbench, wie ändere ich das Trennzeichen? Ich erhalte diesen Fehler im überarbeiteten Code: Fehlercode: 1064 Sie haben einen Fehler in Ihrer SQL-Syntax. Überprüfen Sie das Handbuch, das Ihrer MySQL-Serverversion entspricht, nach der richtigen Syntax, die Sie in der Nähe von '' in Zeile 6 verwenden können –

Verwandte Themen