Kelebihan Menggunakan Kekangan UNIK Terhadap Kekangan Utama Utama
Dengan mewujudkan kekangan UNIK, pentadbir SQL Server menyatakan bahawa lajur mungkin tidak mengandungi nilai pendua. Apabila anda mencipta kekangan UNIQUE yang baru, SQL Server memeriksa ruangan yang dimaksudkan untuk menentukan sama ada ia mengandungi sebarang nilai pendua. Jika jadual mengandungi pendua yang sedia ada, arahan penciptaan kekangan gagal. Begitu juga, apabila anda mempunyai kekangan UNIK dalam lajur, percubaan untuk menambah atau mengubah data yang akan menyebabkan pendua wujud juga gagal.
Kenapa Gunakan Kekangan UNIK
Kekangan UNIK dan kunci utama menguatkuasakan keunikan, tetapi ada kalanya kekangan UNIK adalah pilihan yang lebih baik.
- Gunakan kekangan UNIQUE apabila anda ingin pelbagai kekangan pada jadual. Anda hanya boleh melampirkan satu kunci utama ke jadual.
- Gunakan kekangan UNIK sementara lajur membenarkan nilai nol. Kekangan utama utama hanya boleh dilampirkan pada lajur yang tidak membenarkan nilai nol.
Mewujudkan Kekunci UNIK
Terdapat banyak cara anda boleh membuat kekangan UNIK dalam SQL Server. Jika anda ingin menggunakan Transact-SQL untuk menambahkan kekangan UNIK pada jadual yang sedia ada, anda boleh menggunakan pernyataan ALTER TABLE, seperti digambarkan di bawah:
ALTER TABLE ADD CONSTRAINT UNIQUE ()Jika anda lebih suka berinteraksi dengan SQL Server menggunakan alat GUI, anda juga boleh membuat kekangan UNIK dengan menggunakan SQL Server Management Studio . Ini caranya:
- Buka SQL Server Management Studio .
- Kembangkan folder Tables pangkalan data di mana anda ingin membuat kekangan.
- Klik kanan jadual di mana anda ingin menambah kekangan dan klik Reka bentuk .
- Dalam menu Designer Table, klik Indeks / Kunci .
- Dalam kotak dialog Indeks / Kekunci, klik Tambah .
- Pilih Kunci Unik dalam senarai juntai Jenis .
KEBENARAN UNIK DAN LENGKAP UNIK
Terdapat beberapa kekeliruan mengenai perbezaan antara kekangan UNIQUE dan indeks UNIQUE. Walaupun anda boleh menggunakan perintah Transact-SQL berbeza untuk membuatnya (ALTER TABLE ... ADD CONSTRAINT untuk kekangan dan CREATE INDEX UNIQUE untuk indeks), mereka mempunyai kesan yang sama, untuk sebahagian besar. Sebenarnya, apabila anda membuat kekangan UNIK, ia sebenarnya mewujudkan indeks UNIQUE di atas meja. Adalah penting untuk diperhatikan, bagaimanapun, bahawa terdapat beberapa perbezaan:
- Apabila anda membuat indeks, anda boleh menambah pilihan tambahan kepada arahan penciptaan.
- Lajur tertakluk kepada kekangan UNIQUE boleh digunakan sebagai kunci asing .