الجزء الخامس: قيد التحقق Check Constraint
قيد التحقق يستخدم لتحديد قيم
المدخلة في الحقل, وهو عبارة عن تعبير منطقي(صح|خطأ) ,مثال على ذلك في حقل العمر
نحن نعرف ان القيمة يجب ان تكون مابين سن 16 – 50 فأذا كان العمر المدخل هو 13 او
-199 او 999 يتم استرجاع قيمة الخطاً وبذلك لم يدرج السجل ضمن الجدول وكذلك يجدر
الملاحظة اذا كان حقل العمر يسمح بقيمة باطلة Null فشرط المنطقي يسترجع صح لأن الحقل اصلاً محدد ان
يكون Nullable
لأضافة حقل العمر في جدول tblPerson :
alter table tblPerson
add age int Null
من اجل اضافة قيد التحقق عن طريق جملة الأستعلام:
Alter table {TABLE_NAME}
add constraint {Constraint_Name}
add constraint {Constraint_Name}
Check {Boolean expression}
alter table tblPerson
add constraint CK_tblPerson_age
check (age>16 AND age<50)
عند
اضافة سجل داخل جدول كالأتي:
insert into tblPerson values(7,'K','k@k@.co',Null,1)
فالناتج
هو:
Msg 547, Level 16, State 0, Line 1
The INSERT statement conflicted with the
CHECK constraint "CK_tblPerson_age". The conflict occurred in
database "test", table "dbo.tblPerson", column 'age'.
The statement has been terminated.
ولكن
عند اضافة السجل التالي:
insert into tblPerson(ID,Name,Email,GenderID,age) values(9,'e','e@e@.co',Null,Null)
فالناتج
هو:
(1 row(s) affected)
لحذف
قيد التحقق Check constraint عن طريق جملة الأستعلام:
alter table tblPerson
drop constraint CK_tblPerson_age
لأضافة
قيد التحقق Check constraint بأستخدام الواجهة الرسومية:
اذهب
الى ملف القيود Constraints وأضغط على زر الماوس الأيمن واختر اضافة قيد
جديد :New
Constraint
لكون القيد الذي سنقوم بأضافته هو قيد التحقق فيستوجب ان
نضغط على زر التعبير Expression :
قم بأضافة التعبير لحقل العمر كالأتي:
قم بتخزين التغييرات التي طرأت على ذلك الجدول بالضغط
على زر الماوس الأيمن على اسم شريط الجدول واختيار حفظ الجدول:
Comments
Post a Comment