Masalah:
Anda ingin membuat kolom tertentu menjadi unik dalam tabel tertentu dalam database.
Contoh:
Kami ingin membuat kolom name
unik dalam tabel product
. Kueri di bawah ini menyajikan satu cara untuk melakukannya.
Solusi 1
CREATE TABLE product ( id INT NOT NULL PRIMARY KEY, name VARCHAR(100) UNIQUE, producer VARCHAR(100), category VARCHAR(100) );
Diskusi:
Dalam contoh ini kolom yang diberikan (kolom name
) dibuat unik dengan menambahkan klausa UNIQUE di akhir kolom definisi (name VARCHAR(100) UNIQUE
). Tabel baru ini (dalam contoh kami:product
) akan berisi kolom (dalam contoh kita:name
) yang menyimpan nilai unik dalam baris.
Solusi 2:
ALTER TABLE product ADD CONSTRAINT UQ_product_name UNIQUE(name);
Diskusi:
Dalam contoh ini tabel product
sudah ada. Kami ingin memodifikasi tabel ini dan menambahkan batasan unik ke kolom name
. Ini dimungkinkan dengan menggunakan ALTER TABLE
ayat. Pertama kita tulis ALTER TABLE, lalu kita cantumkan nama tabelnya (dalam contoh kita:product
), dan selanjutnya kita tambahkan klausa ADD CONSTRAINT
dengan nama batasan unik (dalam contoh kami:UQ_product_name
). Ini diikuti oleh kata kunci UNIK dengan kolom/kolom (dalam contoh kita adalah kolom:name
) dalam tanda kurung.
Anda juga dapat membuat batasan unik multi-kolom. Begini caranya:
Solusi 3:
ALTER TABLE product ADD CONSTRAINT UQ_product_name_producer UNIQUE(name, producer);
Diskusi:
Dalam contoh ini produk tabel diubah dengan menggunakan ALTER TABLE
klausa dan klausa ADD CONSTRAINT dengan nama batasan unik (dalam contoh kita:UQ_product_name_producer
) diikuti dengan UNIQUE
kata kunci dengan daftar kolom (dalam contoh kita ada dua kolom:name
dan producer
) dalam tanda kurung.