Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Membuat Auto-Tambahan Lajur Utama Utama Oracle Sedia Ada?

Bagaimanakah Saya Boleh Membuat Auto-Tambahan Lajur Utama Utama Oracle Sedia Ada?

Linda Hamilton
Lepaskan: 2024-12-27 00:28:17
asal
142 orang telah melayarinya

How Can I Make an Existing Oracle Primary Key Column Auto-Increment?

Transformasi Auto-Tambahan untuk Lajur Jadual Oracle Sedia Ada

Isu:

Bagaimanakah lajur sedia ada, sudah ditetapkan sebagai kunci utama, dikonfigurasikan untuk menambah automatik dalam pangkalan data Oracle? Lajur telah dibuat dengan jenis data VARCHAR2(9 BYTE).

Penyelesaian:

Oracle 11g dan Sebelumnya (Pra-12c): Urutan dan Pencetus

  1. Buat Jujukan: Wujudkan jujukan, seperti t_seq, dengan nilai permulaan 150111111 dan langkah tambahan 1.
  2. Laksanakan Pencetus: Bangunkan pencetus SEBELUM INSERT yang mengisi lajur dengan nilai seterusnya daripada jujukan apabila nilai lajur adalah NULL.

Oracle 12c dan Kemudian: Lajur Identiti

  1. Gunakan Lajur Identiti: Tentukan LAjur IDENTITI dalam jadual pernyataan penciptaan, bermula dengan 150111111 dan bertambah dengan 1.

Contoh:

CREATE TABLE t (
    ID NUMBER GENERATED ALWAYS AS IDENTITY
    START WITH 150111111 INCREMENT BY 1,
    text VARCHAR2(50)
);
Salin selepas log masuk

Faedah Lajur Identiti:

  • Memudahkan auto -perlaksanaan increment tanpa memerlukan urutan atau pencetus.
  • Memastikan nilai yang unik dan berjujukan untuk lajur yang ditentukan.

Maklumat Tambahan:

  • Oracle menjana jujukan ( ISEQ$$) untuk menyokong lajur identiti.
  • Pantau maklumat kenaikan automatik menggunakan paparan ALL_TAB_IDENTITY_COLS.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membuat Auto-Tambahan Lajur Utama Utama Oracle Sedia Ada?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan