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

Oracle - Sửa đổi một bảng hiện có để tự động tăng một cột

Bạn không thể thay đổi bảng. Oracle không hỗ trợ các cột tăng tự động khai báo. Bạn có thể tạo một chuỗi

CREATE SEQUENCE note_seq
  START WITH 800
  INCREMENT BY 1
  CACHE 100;

Sau đó, bạn có thể tạo trình kích hoạt

CREATE OR REPLACE TRIGGER populate_note_id
  BEFORE INSERT ON note
  FOR EACH ROW
BEGIN
  :new.note_id := note_seq.nextval;
END;

hoặc nếu bạn muốn cho phép người gọi chỉ định NOTE_ID không mặc định

CREATE OR REPLACE TRIGGER populate_note_id
  BEFORE INSERT ON note
  FOR EACH ROW
BEGIN
  IF( :new.note_id is null )
  THEN 
    :new.note_id := note_seq.nextval;
  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. Làm thế nào để trả về số giây trước nửa đêm trong cơ sở dữ liệu Oracle

  2. Hàm COMPOSE () trong Oracle

  3. Oracle:Truy vấn SQL để tìm tất cả các trình kích hoạt thuộc các bảng?

  4. Chọn từ bảng nếu tìm thấy bản ghi trong bảng khác

  5. Có thể khóa một kích hoạt không; làm thế nào để xác định rằng nó là?