Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Sử dụng CONCAT với MySQL Trigger (Lỗi tại,)

ĐÃ CẬP NHẬT:

  1. Có vẻ như bạn đã không thay đổi DELIMITER .
  2. Rất có thể ý của bạn là CURRENT_TIMESTAMP thay vì CURTIMESTAMP() không tồn tại

Điều đó được cho là một phiên bản chính xác về mặt cú pháp của trình kích hoạt của bạn có thể trông giống như

DELIMITER $$
CREATE TRIGGER users_update_trigger
AFTER UPDATE ON users 
FOR EACH ROW
BEGIN
  INSERT INTO users_backlog (user_id, description, datetime) VALUES 
  (NEW.user_id, CONCAT('modified from ', OLD.hourly, ' to ', NEW.hourly), CURRENT_TIMESTAMP);
END$$
DELIMITER ;

hoặc (bởi vì bạn có một câu lệnh duy nhất trong trình kích hoạt của mình, bạn có thể bỏ qua BEGIN ... END khối và DELIMITER ) đơn giản là

CREATE TRIGGER users_update_trigger
AFTER UPDATE ON users 
FOR EACH ROW
  INSERT INTO users_backlog (user_id, description, datetime) VALUES 
  (NEW.user_id, CONCAT('modified from ', OLD.hourly, ' to ', NEW.hourly), NOW());

Đây là SQLFiddle bản demo



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tự động tải thông tin vào phương thức Twitter Bootstrap

  2. MySQL SELECT only not null value

  3. Google Cloud SQL thế hệ thứ 2 - Công cụ ứng dụng

  4. Bản ghi MySQL sẽ tuân theo TTL

  5. Chọn hàng gần đây nhất với GROUP BY trong MySQL