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

Kích hoạt chèn hàng vào bảng nhật ký khi chèn hoặc xóa trong bảng người được biên dịch với lỗi

Vì bạn không đăng lỗi nên tôi phải đoán. Tôi đoán rằng vấn đề là name đó không phải là một định danh hợp lệ trong ngữ cảnh này. Bạn cần tham chiếu :new.name hoặc :old.name . :old.name sẽ là NULL trên một chèn trong khi :new.name sẽ là NULL đang xóa, vì vậy tôi cho rằng bạn muốn một cái gì đó giống như

CREATE OR REPLACE TRIGGER add_del
  BEFORE INSERT OR DELETE ON persons
  FOR EACH ROW
BEGIN
  IF INSERTING THEN
    INSERT INTO logs (who, what) VALUES (:new.name, 'Insert into persons');
  ELSE
    INSERT INTO logs (who, what) VALUES (:old.name, 'Delete from persons');
  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. Không thể kéo kết quả bằng cách chuyển đầu vào là đường dẫn xml trong oracle

  2. Oracle sau khi cập nhật kích hoạt tạo liên kết cơ sở dữ liệu công khai

  3. Oracle:ORA-12154:Vấn đề TNS:Excel 64-bit / Windows 10 64-bit

  4. ORA-01861:chữ không khớp với chuỗi định dạng

  5. Chọn EMP với SAL tối đa từ mỗi DEPT