[英]MySQL trigger syntax error
我只是為MySQL創建一個觸發器。 但我收到以下錯誤。
錯誤1064(42000):您的SQL語法有錯誤; 檢查與MySQL服務器版本對應的手冊,以便在第1行的“END”附近使用正確的語法
下面是我創建觸發器的代碼。
DROP TRIGGER IF EXISTS user_contact_after_insert;
DELIMITER //
CREATE TRIGGER `user_contact_after_insert`
AFTER INSERT ON `forum_user`
FOR EACH ROW
BEGIN
INSERT INTO `user_contact` (email) VALUES (LCASE(NEW.FIRST_NAME NEW.LAST_NAME+'@gmail.com'));
END;
DELIMETER ;
這里我有兩個表forum_user
& user_contact
。 在forum_user
表中,我有四列,如ID
, first_name
, last_name
, Date
,在user_contact
表中,我有兩列ID
和email
。
現在,我想創建一個觸發器,當一行將插入到forum_user表中時,會在user_contact表中插入一行,其中包含first_name
和last_name
的最新值。
我在這段代碼中做錯了什么。 任何幫助都會很明顯。
更改DELIMITER
並使用CONCAT
DROP TRIGGER IF EXISTS user_contact_after_insert;
DELIMITER //
CREATE TRIGGER `user_contact_after_insert`
AFTER INSERT ON `forum_user`
FOR EACH ROW
BEGIN
INSERT INTO `user_contact` (email)
VALUES (LCASE(CONCAT(NEW.FIRST_NAME, NEW.LAST_NAME,'@gmail.com')));
END// --- <<=== HERE
DELIMITER ;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.