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

Truy xuất IDENTITY được chèn lần cuối của Oracle

Tốt. Oracle sử dụng trình tự và giá trị mặc định cho chức năng IDENTITY trong 12c. Do đó, bạn cần biết về trình tự cho câu hỏi của mình.

Đầu tiên, hãy tạo một bảng nhận dạng thử nghiệm.

CREATE TABLE IDENTITY_TEST_TABLE
(
  ID NUMBER GENERATED ALWAYS AS IDENTITY 
, NAME VARCHAR2(30 BYTE) 
);

Đầu tiên, hãy tìm tên trình tự của bạn được tạo với cột nhận dạng này. Tên trình tự này là giá trị mặc định trong bảng của bạn.

Select TABLE_NAME, COLUMN_NAME, DATA_DEFAULT from USER_TAB_COLUMNS
where TABLE_NAME = 'IDENTITY_TEST_TABLE';

đối với tôi giá trị này là "ISEQ $$ _ 193606"

chèn một số giá trị.

INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('atilla');
INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('aydın');

sau đó chèn giá trị và tìm danh tính.

INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('atilla');
 SELECT "ISEQ$$_193606".currval from dual; 

bạn sẽ thấy giá trị nhận dạng của bạn. Nếu bạn muốn thực hiện trong một khối, hãy sử dụng

declare
   s2 number;
 begin
   INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('atilla') returning ID into s2;
   dbms_output.put_line(s2);
 end;

ID cuối là tên cột danh tính của tôi.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thử thách kiểm tra cơ sở dữ liệu Oracle - So sánh dữ liệu lược đồ

  2. thông báo lỗi sqldeveloper:Bộ điều hợp mạng không thể thiết lập lỗi kết nối

  3. Làm thế nào tôi có thể nhận được số ngày giữa 2 ngày trong Oracle 11g?

  4. Đặt lại Trình tự theo năm không theo giá trị tối thiểu hoặc giá trị lớn nhất

  5. Thay thế nhanh hơn trong Oracle để CHỌN COUNT (*) TỪ bàn nào đó