Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Menggunakan CONCAT dengan Pemicu MySQL (Kesalahan pada ,)

DIPERBARUI:

  1. Sepertinya Anda tidak mengubah DELIMITER .
  2. Kemungkinan besar yang Anda maksud adalah CURRENT_TIMESTAMP bukannya CURTIMESTAMP() yang tidak ada

Meskipun demikian, versi pemicu Anda yang benar secara sintaksis mungkin terlihat seperti

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 ;

atau (karena Anda memiliki satu-satunya pernyataan di pemicu Anda, Anda dapat menghilangkan BEGIN ... END blokir dan DELIMITER ) cukup

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());

Ini SQLFiddle 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. Mendapatkan lebih banyak baris per grup menggunakan groupBy di Eloquent

  2. Bagaimana cara mengurutkan tabel MYSQL secara permanen?

  3. MySQL REGEXP Tanpa Spasi Tanpa Angka

  4. Perbaiki entri duplikat DB (bug MySQL)

  5. Pernyataan MySQL untuk memilih entri terbaru dari kolom tertentu