2011-12-22 13 views
0

こんにちはすべて私はトリガーを再作成しようとしています 私はショーを作成し、オリジナルのSQLをコピーしました。 これを実行すると、構文エラーが発生します。 ??どれIdeadMySQLのトリガー構文?これで何が間違っていますか?

CREATE DEFINER=`root`@`localhost` TRIGGER `update_cached_tables_for_product_insert` AFTER INSERT ON `Product` FOR EACH ROW BEGIN INSERT INTO ProductOffercount (product_id, num_offers) VALUES (NEW.id, 0); END 

答えて

0

MySQLは全体の文の終わりとして(つまり、トリガー定義の一部である)クエリの後;を扱います。したがって、構文エラーが発生します。

delimiter | 

CREATE DEFINER=`root`@`localhost` 
TRIGGER `update_cached_tables_for_product_insert` AFTER INSERT ON `Product` 
    FOR EACH ROW BEGIN 

     INSERT INTO ProductOffercount (product_id, num_offers) VALUES (NEW.id, 0); 

    END; 
| 

delimiter ; 

http://dev.mysql.com/doc/refman/5.0/en/create-trigger.html

:あなたは CREATE TRIGGER句の前に区切り文字を再定義する必要が

関連する問題