Tutorial SQL

SQL RUMAH Pengenalan SQL Sintaks SQL Pilih SQL SQL Pilih Berbeda SQL Dimana SQL Dan, Atau, Tidak Perintah SQL Oleh SQL Sisipkan Ke Nilai Null SQL Pembaruan SQL Hapus SQL SQL Pilih Atas SQL Min dan Maks Hitung SQL, Rata-Rata, Jumlah SQL Suka SQL Wildcard SQL In SQL Antara SQL Alias SQL Bergabung Gabung Dalam SQL SQL Kiri Gabung SQL Benar Bergabung Gabung Penuh SQL SQL Self Gabung SQL Union Grup SQL Oleh SQL Memiliki SQL Ada SQL Apa saja, Semua SQL Pilih Ke Sisipkan SQL Ke Pilih Kasus SQL Fungsi SQL Null Prosedur Tersimpan SQL Komentar SQL Operator SQL

Basis Data SQL

SQL Buat DB SQL Drop DB SQL Cadangan DB SQL Buat Tabel Tabel Jatuhkan SQL Tabel Ubah SQL Batasan SQL SQL Bukan Null SQL Unik Kunci Utama SQL Kunci Asing SQL Pemeriksaan SQL SQL Default Indeks SQL Peningkatan Otomatis SQL Tanggal SQL Tampilan SQL Injeksi SQL SQL Hosting Tipe Data SQL

Referensi SQL

Kata Kunci SQL Fungsi MySQL Fungsi SQL Server Fungsi Akses MS Referensi Cepat SQL

Contoh SQL

Contoh SQL Kuis SQL Latihan SQL Sertifikat SQL

Bidang PENINGKATAN OTOMATIS SQL


Bidang PENINGKATAN OTOMATIS

Peningkatan otomatis memungkinkan nomor unik dihasilkan secara otomatis ketika catatan baru dimasukkan ke dalam tabel.

Seringkali ini adalah bidang kunci utama yang ingin kita buat secara otomatis setiap kali catatan baru dimasukkan.


Sintaks untuk MySQL

Pernyataan SQL berikut mendefinisikan kolom "Personid" menjadi bidang kunci utama peningkatan otomatis di tabel "Orang":

CREATE TABLE Persons (
    Personid int NOT NULL AUTO_INCREMENT,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int,
    PRIMARY KEY (Personid)
);

MySQL menggunakan AUTO_INCREMENTkata kunci untuk melakukan fitur peningkatan otomatis.

Secara default, nilai awal untuk AUTO_INCREMENTadalah 1, dan akan bertambah 1 untuk setiap record baru.

Untuk membiarkan AUTO_INCREMENTurutan dimulai dengan nilai lain, gunakan pernyataan SQL berikut:

ALTER TABLE Persons AUTO_INCREMENT=100;

Untuk menyisipkan catatan baru ke dalam tabel "Orang", kita TIDAK perlu menentukan nilai untuk kolom "Personid" (nilai unik akan ditambahkan secara otomatis):

INSERT INTO Persons (FirstName,LastName)
VALUES ('Lars','Monsen');

Pernyataan SQL di atas akan memasukkan catatan baru ke dalam tabel "Orang". Kolom "Personid" akan diberi nilai unik. Kolom "FirstName" akan disetel ke "Lars" dan kolom "LastName" akan disetel ke "Monsen".


Sintaks untuk SQL Server

Pernyataan SQL berikut mendefinisikan kolom "Personid" menjadi bidang kunci utama peningkatan otomatis di tabel "Orang":

CREATE TABLE Persons (
    Personid int IDENTITY(1,1) PRIMARY KEY,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int
);

MS SQL Server menggunakan IDENTITYkata kunci untuk melakukan fitur peningkatan otomatis.

Dalam contoh di atas, nilai awal untuk IDENTITYadalah 1, dan akan bertambah 1 untuk setiap record baru.

Tip: Untuk menentukan bahwa kolom "Personid" harus dimulai dari nilai 10 dan bertambah 5, ubah menjadi IDENTITY(10,5).

Untuk menyisipkan catatan baru ke dalam tabel "Orang", kita TIDAK perlu menentukan nilai untuk kolom "Personid" (nilai unik akan ditambahkan secara otomatis):

INSERT INTO Persons (FirstName,LastName)
VALUES ('Lars','Monsen');

Pernyataan SQL di atas akan memasukkan catatan baru ke dalam tabel "Orang". Kolom "Personid" akan diberi nilai unik. Kolom "FirstName" akan disetel ke "Lars" dan kolom "LastName" akan disetel ke "Monsen".



Sintaks untuk Akses

Pernyataan SQL berikut mendefinisikan kolom "Personid" menjadi bidang kunci utama peningkatan otomatis di tabel "Orang":

CREATE TABLE Persons (
    Personid AUTOINCREMENT PRIMARY KEY,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    Age int
);

MS Access menggunakan AUTOINCREMENTkata kunci untuk melakukan fitur peningkatan otomatis.

Secara default, nilai awal untuk AUTOINCREMENTadalah 1, dan akan bertambah 1 untuk setiap record baru.

Tip: Untuk menentukan bahwa kolom "Personid" harus dimulai dari nilai 10 dan bertambah 5, ubah peningkatan otomatis menjadi AUTOINCREMENT(10,5).

Untuk menyisipkan catatan baru ke dalam tabel "Orang", kita TIDAK perlu menentukan nilai untuk kolom "Personid" (nilai unik akan ditambahkan secara otomatis):

INSERT INTO Persons (FirstName,LastName)
VALUES ('Lars','Monsen');

Pernyataan SQL di atas akan memasukkan catatan baru ke dalam tabel "Orang". Kolom "Personid" akan diberi nilai unik. Kolom "FirstName" akan disetel ke "Lars" dan kolom "LastName" akan disetel ke "Monsen".


Sintaks untuk Oracle

Di Oracle kodenya sedikit lebih rumit.

Anda harus membuat bidang peningkatan otomatis dengan objek urutan (objek ini menghasilkan urutan angka).

Gunakan CREATE SEQUENCEsintaks berikut:

CREATE SEQUENCE seq_person
MINVALUE 1
START WITH 1
INCREMENT BY 1
CACHE 10;

Kode di atas membuat objek urutan yang disebut seq_person, yang dimulai dengan 1 dan akan bertambah 1. Ini juga akan menyimpan hingga 10 nilai untuk kinerja. Opsi cache menentukan berapa banyak nilai urutan yang akan disimpan dalam memori untuk akses yang lebih cepat.

Untuk memasukkan record baru ke dalam tabel "Orang", kita harus menggunakan fungsi nextval (fungsi ini mengambil nilai berikutnya dari urutan seq_person):

INSERT INTO Persons (Personid,FirstName,LastName)
VALUES (seq_person.nextval,'Lars','Monsen');

Pernyataan SQL di atas akan memasukkan catatan baru ke dalam tabel "Orang". Kolom "Personid" akan diberi nomor berikutnya dari urutan seq_person. Kolom "FirstName" akan disetel ke "Lars" dan kolom "LastName" akan disetel ke "Monsen".