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

MySQL trigger để đặt cột thành max + 1 không hoạt động

Đó là vì mysql thấy ; (dấu phân cách) và ngắt việc thực thi CREATE TRIGGER

Cố gắng thay đổi thành:

delimiter |


CREATE TRIGGER ins_saved_listing BEFORE INSERT ON saved_listing
FOR EACH ROW BEGIN
    SET NEW.create_dt = NOW();
    SET NEW.rank = (SELECT MAX(rank) + 1 FROM saved_listing WHERE user_id = NEW.user_id);
END;

|

delimiter ;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bạn có nên sử dụng các câu lệnh đã chuẩn bị sẵn chỉ cho việc trốn thoát của họ không?

  2. Cắt bỏ tất cả các bảng (hầu hết trong số đó có ràng buộc). Làm thế nào để tạm thời loại bỏ chúng

  3. Làm thế nào để lặp qua một mảng các đầu vào trong một biểu mẫu?

  4. Lỗi quy trình lưu trữ MySQL Ký tự không mong muốn:

  5. mysql - Tối ưu hóa ĐẶT HÀNG BẰNG THAN trên cột bảng đã tham gia