7.3 SQL - UNIQUE
القيد SQL UNIQUE
القيد UNIQUE يُستخدم في SQL لضمان عدم تكرار القيم في عمود (أو مجموعة أعمدة) داخل الجدول.
كل قيمة في العمود يجب أن تكون فريدة.
✅ الفرق بين UNIQUE و PRIMARY KEY
- الـ
PRIMARY KEYيحتوي ضمنيًا على قيدUNIQUEوNOT NULL. - يمكن أن يحتوي الجدول على قيد UNIQUE أكثر من مرة، لكن مفتاح أساسي واحد فقط.
✅ الصيغة (Syntax):
🔸 عند إنشاء الجدول:
CREATE TABLE Persons (
ID int NOT NULL UNIQUE,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int
);
🔸 قيد UNIQUE على أكثر من عمود:
CREATE TABLE Persons (
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
CONSTRAINT UC_Person UNIQUE (ID, LastName)
);
🔧 باستخدام ALTER TABLE:
ALTER TABLE Persons
ADD UNIQUE (ID);
ALTER TABLE Persons
ADD CONSTRAINT UC_Person UNIQUE (ID, LastName);
🗑 حذف قيد UNIQUE
حسب نظام إدارة قاعدة البيانات:
- MySQL:
ALTER TABLE Persons
DROP INDEX UC_Person;
- SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT UC_Person;
💡 ملاحظات:
- يفضل دائمًا تسمية القيد (`CONSTRAINT`) لتسهيل تعديله أو حذفه لاحقًا.
- إذا لم يتم تسمية القيد، يقوم نظام إدارة قاعدة البيانات بتوليد اسم تلقائي.
- قيد
UNIQUEلا يسمح بالتكرار لكنه يسمح بالقيم NULL (إلا إذا تم دمجه معNOT NULL).
تعليقات
إرسال تعليق