create trigger trig1
-> after insert on student
-> for each row
-> when (new.name="rgb")
-> begin
-> insert into class ("ug1",1)
-> end;
when文の近くに何かが間違っていることがわかります。それを見つけるのを助けてくれますか?このトリガー機能を修正するにはどうすればよいですか?
desc class;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| name | varchar(40) | YES | | NULL | |
| section | int(11) | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
2 rows in set (0.06 sec)
mysql> desc student;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| roll | int(11) | YES | | NULL | |
| name | varchar(40) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
これらは両方の表の説明です。
私はあなたのデータベースがMySQLであると推測しています。もしそうなら、データベースはANSI引用符を有効にしていますか? http://dev.mysql.com/doc/refman/5.7/en/sql-mode.html#sqlmode_ansi_quotes – jac