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

Thay đổi giá trị đã chèn bằng trình kích hoạt

Trong cú pháp kích hoạt của Oracle, bản ghi mới được chèn vào được tham chiếu bởi :new , không phải new (chú ý dấu hai chấm). Ngoài ra, SET là một phần của câu lệnh cập nhật, không phải là cách để đặt giá trị trường - những giá trị này được thực hiện bằng các phép gán đơn giản, nhưng lưu ý rằng chúng được thực hiện với := thay vì = .
Vì vậy, trình kích hoạt của bạn nên đọc:

CREATE OR REPLACE TRIGGER NumberOfBooks
    BEFORE INSERT
    ON book
    FOR EACH ROW
BEGIN
    IF :new.nobook < 10
    THEN
        :new.nobook := 10;
    END IF;
END;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle chọn dữ liệu theo các khối ngày liền kề

  2. So sánh thời gian của Oracle

  3. Hàm COLLATION () trong Oracle

  4. thay đổi kích thước của kiểu dữ liệu trong sql

  5. Quy trình nâng cấp từng bước cho Phần nâng cấp R12.2 -4 (Áp dụng Gói cập nhật phát hành 12.2.x)