SQL AUTO NAIK
Autokenaikan menjana nombor unik apabila rekod baharu dimasukkan ke dalam jadual.
Medan AUTO KENAIKAN
Kami biasanya mahu mencipta nilai medan kunci primer secara automatik setiap kali rekod baharu dimasukkan.
Kami boleh mencipta medan kenaikan automatik dalam jadual.
Sintaks untuk MySQL
Pernyataan SQL berikut mentakrifkan lajur "ID" dalam jadual "Orang" sebagai medan kunci utama kenaikan automatik:
(
ID int NOT NULL AUTO_INCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Alamat varchar(255),
City varchar(255),
PRIMARY KEY ID)
)
MySQL menggunakan kata kunci AUTO_INCREMENT untuk melaksanakan tugasan kenaikan automatik.
Secara lalai, AUTO_INCREMENT bermula pada 1 dan kenaikan sebanyak 1 untuk setiap rekod baharu.
Untuk mendapatkan urutan AUTO_INCREMENT bermula dengan nilai yang berbeza, gunakan sintaks SQL berikut:
Untuk berada dalam Untuk memasukkan rekod baharu ke dalam jadual "Orang", kita tidak perlu menentukan nilai untuk lajur "ID" (nilai unik akan ditambah secara automatik):
VALUES ( 'Lars','Monsen')
Pernyataan SQL di atas akan memasukkan rekod baharu dalam jadual "Orang". Lajur "ID" akan diberikan nilai unik. Lajur "FirstName" akan ditetapkan kepada "Lars" dan lajur "LastName" akan ditetapkan kepada "Monsen".
Sintaks untuk Pelayan SQL
Pernyataan SQL berikut mentakrifkan lajur "ID" dalam jadual "Orang" sebagai medan kunci utama kenaikan automatik:
(
ID int IDENTITI(1,1) KUNCI UTAMA,
Nama Akhir varchar(255) BUKAN NULL,
FirstName varchar(255),
Alamat varchar(255),
City varchar(255)
)
MS SQL Server menggunakan kata kunci IDENTITI untuk melaksanakan tugasan kenaikan automatik.
Dalam contoh di atas, IDENTITI bermula pada 1 dan meningkat sebanyak 1 untuk setiap rekod baharu.
Petua: Untuk menentukan bahawa lajur "ID" bermula pada 10 dan meningkat sebanyak 5, tukar identiti kepada IDENTITY(10,5).
Untuk memasukkan rekod baharu ke dalam jadual "Orang", kita tidak perlu menentukan nilai untuk lajur "ID" (nilai unik ditambah secara automatik):
VALUES ('Lars','Monsen')
Pernyataan SQL di atas akan memasukkan rekod baharu dalam jadual "Orang". Lajur "ID" akan diberikan nilai unik. Lajur "FirstName" akan ditetapkan kepada "Lars" dan lajur "LastName" akan ditetapkan kepada "Monsen".
Sintaks untuk Akses
Pernyataan SQL berikut mentakrifkan lajur "ID" dalam jadual "Orang" sebagai medan kunci utama kenaikan automatik:
(
ID Integer OTOMATIS KUNCI UTAMA,
Nama Akhir varchar(255) BUKAN NULL,
FirstName varchar(255),
Alamat varchar(255),
City varchar(255)
)
MS Access menggunakan kata kunci AUTOINCREMENT untuk melaksanakan tugas autoincrement.
Secara lalai, AUTOINCREMENT bermula pada 1 dan kenaikan sebanyak 1 untuk setiap rekod baharu.
Petua: Untuk menentukan bahawa lajur "ID" bermula pada 10 dan meningkat sebanyak 5, sila tukar autoincrement kepada AUTOINCREMENT(10,5).
Untuk memasukkan rekod baharu ke dalam jadual "Orang", kita tidak perlu menentukan nilai untuk lajur "ID" (nilai unik ditambah secara automatik):
VALUES ('Lars','Monsen')
Pernyataan SQL di atas akan memasukkan rekod baharu dalam jadual "Orang". Lajur "ID" akan diberikan nilai unik. Lajur "FirstName" akan ditetapkan kepada "Lars" dan lajur "LastName" akan ditetapkan kepada "Monsen".
Sintaks untuk Oracle
Dalam Oracle, kodnya lebih rumit sedikit.
Anda mesti mencipta medan autokenaikan daripada objek jujukan (yang menjana jujukan nombor).
Sila gunakan sintaks CREATE SEQUENCE berikut:
MINVALUE 1
MULAKAN DENGAN 1
PENAMBAHKAN SEBANYAK 1<🎜0 >
Untuk memasukkan rekod baharu dalam jadual "Orang", kita perlu menggunakan fungsi nextval (yang mendapatkan semula nilai seterusnya daripada urutan seq_person):
INSERT INTO Persons ( ID ,FirstName,LastName)