SQL Constraints
در SQL از Constraints (محدودیتها) برای کنترل نوع دادههایی که در جدول ذخیره میشوند استفاده میکنیم.
محدودیتها باعث میشن دادهها معتبر، منظم و سازگار باقی بمونن.
🔹 انواع Constraints در SQL
نام محدودیت | توضیح |
---|---|
NOT NULL | مقدار ستون نمیتونه خالی باشه. |
UNIQUE | مقدار هر سطر در این ستون باید یکتا باشه. |
PRIMARY KEY | هر رکورد را بهصورت یکتا مشخص میکنه (ترکیبی از NOT NULL و UNIQUE). |
FOREIGN KEY | رابطه بین دو جدول را مشخص میکنه. |
CHECK | مقدار داده باید شرط خاصی را رعایت کنه. |
DEFAULT | مقدار پیشفرض برای ستون تعیین میکنه. |
🔹 مثال: ایجاد جدول با Constraints
📌 توضیح:
-
StudentID
→ کلید اصلی (نباید تکراری یا خالی باشه) -
FullName
→ نباید خالی باشه -
Age
→ باید حداقل ۱۸ باشه -
Email
→ مقدار تکراری نپذیره -
City
→ اگر مقداری وارد نشه،'Unknown'
ثبت میشه
🔹 افزودن Constraint بعد از ساخت جدول
📌 محدودیت chk_Age
بعد از ساخت جدول اضافه میشود.
🔹 حذف Constraint
📌 محدودیت chk_Age
از جدول حذف میشود.
🔹 توضیح مختصر هر نوع Constraint
✅ NOT NULL
مقدار ستون باید حتماً وارد شود.
✅ UNIQUE
هیچ دو رکوردی نباید مقدار یکسان در ستون داشته باشند.
✅ PRIMARY KEY
هر رکورد را یکتا میکند (فقط یک کلید اصلی در هر جدول وجود دارد).
✅ FOREIGN KEY
ارتباط بین جداول را برقرار میکند.
✅ CHECK
مقدار باید از شرطی خاص پیروی کند.
✅ DEFAULT
اگر مقداری وارد نشود، مقدار پیشفرض قرار میگیرد.
🔹 نکات مهم
-
Constraints در زمان درج (
INSERT
) یا ویرایش (UPDATE
) دادهها بررسی میشن. -
در SQL Server، MySQL و PostgreSQL همگی از این محدودیتها پشتیبانی میکنند.
-
استفادهی درست از محدودیتها باعث میشه دیتابیس تمیز، پایدار و بدون دادهی نادرست باشه.