Sehat. Oracle menggunakan urutan dan nilai default untuk fungsionalitas IDENTITY di 12c. Oleh karena itu, Anda perlu mengetahui tentang urutan pertanyaan Anda.
Pertama buat tabel identitas pengujian.
CREATE TABLE IDENTITY_TEST_TABLE
(
ID NUMBER GENERATED ALWAYS AS IDENTITY
, NAME VARCHAR2(30 BYTE)
);
Pertama, mari temukan nama urutan Anda yang dibuat dengan kolom identitas ini. Nama urutan ini adalah nilai default di tabel Anda.
Select TABLE_NAME, COLUMN_NAME, DATA_DEFAULT from USER_TAB_COLUMNS
where TABLE_NAME = 'IDENTITY_TEST_TABLE';
bagi saya nilai ini adalah "ISEQ$$_193606"
masukkan beberapa nilai.
INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('atilla');
INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('aydın');
lalu masukkan nilai dan temukan identitas.
INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('atilla');
SELECT "ISEQ$$_193606".currval from dual;
Anda harus melihat nilai identitas Anda. Jika Anda ingin melakukannya dalam satu blok gunakan
declare
s2 number;
begin
INSERT INTO IDENTITY_TEST_TABLE (name) VALUES ('atilla') returning ID into s2;
dbms_output.put_line(s2);
end;
ID terakhir adalah nama kolom identitas saya.