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.