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

Hibernate + chuỗi oracle + trình kích hoạt

Phản hồi được tìm thấy tại Khắc phục sự cố với Oracle Trigger để tạo id từ một chuỗi

Tôi cần điều chỉnh trình kích hoạt của mình để chỉ chạy nếu không có ID nào được cung cấp:

CREATE OR REPLACE TRIGGER A_TRG
BEFORE INSERT
ON A REFERENCING NEW AS New OLD AS Old
FOR EACH ROW
WHEN (New.IDS is null) -- (1)
BEGIN
  :new.IDS := A_SEQ.nextval;
END A_TRG;
/

(1) dòng này cho phép Hibernate gọi A_SEQ.nextVal theo cách thủ công để đặt ID và sau đó bỏ qua trình kích hoạt. Nếu không, Hibernate sẽ nhận được giá trị tiếp theo một cách vô ích vì trình kích hoạt sẽ luôn đặt lại ID gọi tiếp theo



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. cách viết truy vấn sql để chọn các hàng có giá trị lớn nhất trong một cột

  2. Thủ tục Oracle PL / SQL chạy chậm hơn SQL

  3. Chuyển đổi cột thành hàng trong Oracle

  4. quy trình được lưu trữ để chọn tất cả các hàng từ bảng trong Oracle

  5. Lịch sử cơ sở dữ liệu cho việc sử dụng máy khách