آموزش SQLserver (بخش يازدهم)
ايجاد کردن Check Constraint
شناخت Check Constraint
يکي از مهمترين بازرسي هاي طراحي پايگاه داده يکپارچه سازي داده ها مي باشد. قاعده يکپارچگي داده ها تضمين مي کند که داده هاي ايجاد شده در پايگاه داده اگر درست نباشد حداقل قابل قبول مي باشد. چندين سطح از يکپارچگي داده ها وجود دارد. در درس 7 ما درباره يکپارچگي رابطه اي مطالعه کرديم که تضمين مي کند اجتماع بين جداول ايجاد و به طور صحيح نگهداري مي گردند.
Check Constraintsبراي اجراي دو فرم اضافي از يکپارچگي پايگاه داده استفاده مي شود. domain Integrity و entity Integrity . در اصطلاحات رابطه اي که Domain محدوده اي از مقاديري است که يک ستون مي تواند داشته باشد. نوع داده هاي يک ستون يکي از ويژگيهاي از يک Domain مي باشد، اما تعريف نوع داده معمولاً کافي نيست. براي مثال، يک ستون Smallint مي تواند شامل مقادير صحيح از 768/32- تا 767/32 مي باشد که ممکن نوع داده مناسبي براي يک ستوني که شامل سالي است که يک کارمند مدرک دانشگاهي را در دريافت مي کند باشد. اما حدود اصلي مقادير ستون Year Degree Awarded بيشتر محدود شده و بين 1900 و سال جاري مي باشد. شما از يک Check Constraints استفاده مي کنيد، براي تخمين اينکه هيچ کس به طور واقعي مقادير 1543 يا 2075 را به عنوان مقدار ستون وارد نمي کند. Entity Integrity Constraints جامعيت از موجودي خودش را اجرا مي کند. مهمترين محدوديتهاي يکپارچگي موجوديت آن است که هر موجوديت Entity Integrity بايد به طور واحد قابل شناسايي باشد. اين محدوديت به وسيله مشخص کردن يک کليد اصلي براي جدول انجام مي گيرد. يکپارچگي موجوديت همچنين مي تواند درگير ارزيابي شرطي از چندين ستون در يک جدول باشد و اين نوع از محدوديت اغلب بيشتر با استفاده از Check Constraints انجام مي گيرد. براي مثال، اگر يک جدول شامل ستونهاي کشور و ايالت باشد شما ممکن از يک Check Constraints براي مشخص کردن اينکه ارزش ستون State ، "AZ" معتبر مي باشد فقط اگر ستون Country شامل مقادير USA باشد. Check Constraint به عنوان Boolean Expressions شناخته مي شود يک Boolean Expressions براي مقادير True يا False ارزيابي مي گردد. Boolean Expressions را در درس 13 مي آموزيم. در اين درس ما از عبارت LEN()>=4 استفاده مي کنيم. LEN يک تابع Transact-SQL مي باشد که تعدادي کارکترهاي يک رشته را برمي گرداند. بنابراين عبارت LEN()>=4 ارزش آن اگر شامل 4 يا بيشتر کارکتر باشد ارزش آن True و اگر کمتر از 4 باشد ارزش آن False مي گردد.
ايجاد کردن Check Constraint)
مانند ايندکس ها و پيوندها شما مي توانيد Check Constraints را با استفاده از کادر محاوره اي Properties از Table Designer ايجاد کنيد.
1- Table Designer را براي جدول Oils به وسيله کليک راست کردن نام جدول در قاب Details باز کرده و Design Table را انتخاب مي کنيم. Table Designer , SQL Server را باز مي کنيم.
2- دکمه Constraints را کليک کرده SQL Server کادر محاوره اي Table Designer Properties را با صفحه خصوصيات Constraints Check نشان داده شده باز مي کنيم.
3- New را کليک کرده Ck-Oils , SQL Server را به عنوان نام محدوديت پيشنهاد مي دهد. براي اين مثال اين نام را مي پذيريم.
4- Len(Oil Name)>=4را به عنوان عبارت محدوديت وارد مي کنيم.
راهنمايي: اگر شما يک Check Constraint جديد را ايجاد مي کنيد و مراقب نيستيد که آيا داده هاي موجود متابعت مي شوند، شما مي توانيد بگويد به SQL Server که از ايجاد کردن داده به وسيله چک نکردنCheck Existing Data On Creation از محدوديت چشم پوشي کند.
5- Close را کليک کرده SQL Server کادر محاوره اي Designers Properties Table را مي بندد.
6- دکمه Save را کليک کرده SQL Server کنترل مي کند که همه سطرها در جدول باCheck Constraint مواجه مي شوند و سپس محدوديت را ذخيره مي کنيم.
مديريت Check Constraints
به عنوان بخشي از طرح پايگ اه داده، Check Constraints نبايد تحت شرايط نرمال نياز به مقدار زياد نگهداري داشته باشد. شما آنها را يکباره تعريف کرده زماني که پايگاه داده را ايجاد مي کنيد. اگر چه طرحهاي پايگاه داده به تدريج تغيير خواهد کرد. تغييرات Check Constraints تغيير خواهد کرد. Enterprise Manager نگهداري محدوديتها را آسان مي سازد.
تغيير دادن Check Constraint
Table Designer مکانيزمي براي تغيير متن از يک Check Constraint از همان کادر محاوره اي که شما براي ايجاد آن استفاده کرديد فراهم مي کند.
تغيير متن محدوديت
1- اگر Table Designer براي جدول Oils هنوز از تمرين قبل باز نمي باشد به وسيله کليک راست کردن نام جدول در قاب Details آن را باز کرده وDesign Table را انتخاب مي کنيم. Table Designer , SQL Sarver را باز مي کند.
2- دکمه Constraints را کليک کرده SQL Sarver کادر محاوره ايTable Designer را با صفحه خصوصيات Check Constraint باز مي کند.
3- اطمينان حاصل کنيد کهCk – Oilsدر Constraint Combo Box انتخاب شده نشان داده شده است.
4- متن محدوديت را برايLEN (Oil Name )>2 به عنوان عبارت محدوديت جديد تغيير مي دهيم.
5- Close را کليک کردهSQL Server کادر محاوره ايTable Designer’s Properties را مي بندد.
6- دکمه Save را کليک کرده SQL Server همه سطرها در جدول را که با Check Constraint جديد مواجه است را کنترل کرده و سپس محدوديت را ذخيره مي سازد.
نگهداري Check Constraints
مانند ديگر خصوصيات جدول ديگر، Check Constraints در کادر محاوره اي Properties ازTable Design نگهداري مي گردد.
تغيير نام يک Check Constraints
1- Table Designer براي جدول Oils به وسيله کليک راست کردن نام جدول در قاب Details باز کرده و Design Table را انتخاب مي کنيم. Table Designer , SQL Server را باز مي کنيم.
2- دکمه Constraints را کليک کرده SQL Server کادر محاوره اي Table Designers Properties را با صفحه خصوصيات Check Constraint نشان داده شده باز مي کند.
3- Ck-Oils را در فيلد Constraint Name انتخاب کرده و آن را به Ck-Deleteme تغيير مي دهيم.
4- Close را کليک کرده SQL Server کادر محاوره اي Properties را مي بندد.
5- دکمه Save را کليک کردهSQL Server همه سطرها در جدول که باCheck Constraint مواجه شده اند را کنترل مي کند و سپسConstraint ذخيره مي گردد.
حذف يک Check Constraint
1- Table Designer براي جدول Oils را به وسيله کليک راست کردن نام جدول در قاب Details باز کرده و جدول Design را انتخاب مي کنيم. Table Designer , SQL Server را باز مي کند.
2- دکمه Constraints را کليک کرده SQL Server کادر محاوره اي Table Designers Properties را با صفحه خصوصياتCheck Constraint نشان داده شده باز مي کنيم.
3- اطمينان حاصل کنيد که Ck-Deleteme در فيلد محدوديت انتخاب شده مي باشد و سپس Delete را کليک مي کنيم. SQL Server محدوديت را برمي دارد.
4- Close را کليک کرده SQL Server کادر محاوره اي Properties را مي بندد.
5- دکمه Save را کليک مي کنيم. SQL Server محدوديت را برمي دارد.
6- Table Designer را مي بنديم
شناخت Check Constraint
يکي از مهمترين بازرسي هاي طراحي پايگاه داده يکپارچه سازي داده ها مي باشد. قاعده يکپارچگي داده ها تضمين مي کند که داده هاي ايجاد شده در پايگاه داده اگر درست نباشد حداقل قابل قبول مي باشد. چندين سطح از يکپارچگي داده ها وجود دارد. در درس 7 ما درباره يکپارچگي رابطه اي مطالعه کرديم که تضمين مي کند اجتماع بين جداول ايجاد و به طور صحيح نگهداري مي گردند.
Check Constraintsبراي اجراي دو فرم اضافي از يکپارچگي پايگاه داده استفاده مي شود. domain Integrity و entity Integrity . در اصطلاحات رابطه اي که Domain محدوده اي از مقاديري است که يک ستون مي تواند داشته باشد. نوع داده هاي يک ستون يکي از ويژگيهاي از يک Domain مي باشد، اما تعريف نوع داده معمولاً کافي نيست. براي مثال، يک ستون Smallint مي تواند شامل مقادير صحيح از 768/32- تا 767/32 مي باشد که ممکن نوع داده مناسبي براي يک ستوني که شامل سالي است که يک کارمند مدرک دانشگاهي را در دريافت مي کند باشد. اما حدود اصلي مقادير ستون Year Degree Awarded بيشتر محدود شده و بين 1900 و سال جاري مي باشد. شما از يک Check Constraints استفاده مي کنيد، براي تخمين اينکه هيچ کس به طور واقعي مقادير 1543 يا 2075 را به عنوان مقدار ستون وارد نمي کند. Entity Integrity Constraints جامعيت از موجودي خودش را اجرا مي کند. مهمترين محدوديتهاي يکپارچگي موجوديت آن است که هر موجوديت Entity Integrity بايد به طور واحد قابل شناسايي باشد. اين محدوديت به وسيله مشخص کردن يک کليد اصلي براي جدول انجام مي گيرد. يکپارچگي موجوديت همچنين مي تواند درگير ارزيابي شرطي از چندين ستون در يک جدول باشد و اين نوع از محدوديت اغلب بيشتر با استفاده از Check Constraints انجام مي گيرد. براي مثال، اگر يک جدول شامل ستونهاي کشور و ايالت باشد شما ممکن از يک Check Constraints براي مشخص کردن اينکه ارزش ستون State ، "AZ" معتبر مي باشد فقط اگر ستون Country شامل مقادير USA باشد. Check Constraint به عنوان Boolean Expressions شناخته مي شود يک Boolean Expressions براي مقادير True يا False ارزيابي مي گردد. Boolean Expressions را در درس 13 مي آموزيم. در اين درس ما از عبارت LEN()>=4 استفاده مي کنيم. LEN يک تابع Transact-SQL مي باشد که تعدادي کارکترهاي يک رشته را برمي گرداند. بنابراين عبارت LEN()>=4 ارزش آن اگر شامل 4 يا بيشتر کارکتر باشد ارزش آن True و اگر کمتر از 4 باشد ارزش آن False مي گردد.
ايجاد کردن Check Constraint)
مانند ايندکس ها و پيوندها شما مي توانيد Check Constraints را با استفاده از کادر محاوره اي Properties از Table Designer ايجاد کنيد.
1- Table Designer را براي جدول Oils به وسيله کليک راست کردن نام جدول در قاب Details باز کرده و Design Table را انتخاب مي کنيم. Table Designer , SQL Server را باز مي کنيم.
2- دکمه Constraints را کليک کرده SQL Server کادر محاوره اي Table Designer Properties را با صفحه خصوصيات Constraints Check نشان داده شده باز مي کنيم.
3- New را کليک کرده Ck-Oils , SQL Server را به عنوان نام محدوديت پيشنهاد مي دهد. براي اين مثال اين نام را مي پذيريم.
4- Len(Oil Name)>=4را به عنوان عبارت محدوديت وارد مي کنيم.
راهنمايي: اگر شما يک Check Constraint جديد را ايجاد مي کنيد و مراقب نيستيد که آيا داده هاي موجود متابعت مي شوند، شما مي توانيد بگويد به SQL Server که از ايجاد کردن داده به وسيله چک نکردنCheck Existing Data On Creation از محدوديت چشم پوشي کند.
5- Close را کليک کرده SQL Server کادر محاوره اي Designers Properties Table را مي بندد.
6- دکمه Save را کليک کرده SQL Server کنترل مي کند که همه سطرها در جدول باCheck Constraint مواجه مي شوند و سپس محدوديت را ذخيره مي کنيم.
مديريت Check Constraints
به عنوان بخشي از طرح پايگ اه داده، Check Constraints نبايد تحت شرايط نرمال نياز به مقدار زياد نگهداري داشته باشد. شما آنها را يکباره تعريف کرده زماني که پايگاه داده را ايجاد مي کنيد. اگر چه طرحهاي پايگاه داده به تدريج تغيير خواهد کرد. تغييرات Check Constraints تغيير خواهد کرد. Enterprise Manager نگهداري محدوديتها را آسان مي سازد.
تغيير دادن Check Constraint
Table Designer مکانيزمي براي تغيير متن از يک Check Constraint از همان کادر محاوره اي که شما براي ايجاد آن استفاده کرديد فراهم مي کند.
تغيير متن محدوديت
1- اگر Table Designer براي جدول Oils هنوز از تمرين قبل باز نمي باشد به وسيله کليک راست کردن نام جدول در قاب Details آن را باز کرده وDesign Table را انتخاب مي کنيم. Table Designer , SQL Sarver را باز مي کند.
2- دکمه Constraints را کليک کرده SQL Sarver کادر محاوره ايTable Designer را با صفحه خصوصيات Check Constraint باز مي کند.
3- اطمينان حاصل کنيد کهCk – Oilsدر Constraint Combo Box انتخاب شده نشان داده شده است.
4- متن محدوديت را برايLEN (Oil Name )>2 به عنوان عبارت محدوديت جديد تغيير مي دهيم.
5- Close را کليک کردهSQL Server کادر محاوره ايTable Designer’s Properties را مي بندد.
6- دکمه Save را کليک کرده SQL Server همه سطرها در جدول را که با Check Constraint جديد مواجه است را کنترل کرده و سپس محدوديت را ذخيره مي سازد.
نگهداري Check Constraints
مانند ديگر خصوصيات جدول ديگر، Check Constraints در کادر محاوره اي Properties ازTable Design نگهداري مي گردد.
تغيير نام يک Check Constraints
1- Table Designer براي جدول Oils به وسيله کليک راست کردن نام جدول در قاب Details باز کرده و Design Table را انتخاب مي کنيم. Table Designer , SQL Server را باز مي کنيم.
2- دکمه Constraints را کليک کرده SQL Server کادر محاوره اي Table Designers Properties را با صفحه خصوصيات Check Constraint نشان داده شده باز مي کند.
3- Ck-Oils را در فيلد Constraint Name انتخاب کرده و آن را به Ck-Deleteme تغيير مي دهيم.
4- Close را کليک کرده SQL Server کادر محاوره اي Properties را مي بندد.
5- دکمه Save را کليک کردهSQL Server همه سطرها در جدول که باCheck Constraint مواجه شده اند را کنترل مي کند و سپسConstraint ذخيره مي گردد.
حذف يک Check Constraint
1- Table Designer براي جدول Oils را به وسيله کليک راست کردن نام جدول در قاب Details باز کرده و جدول Design را انتخاب مي کنيم. Table Designer , SQL Server را باز مي کند.
2- دکمه Constraints را کليک کرده SQL Server کادر محاوره اي Table Designers Properties را با صفحه خصوصياتCheck Constraint نشان داده شده باز مي کنيم.
3- اطمينان حاصل کنيد که Ck-Deleteme در فيلد محدوديت انتخاب شده مي باشد و سپس Delete را کليک مي کنيم. SQL Server محدوديت را برمي دارد.
4- Close را کليک کرده SQL Server کادر محاوره اي Properties را مي بندد.
5- دکمه Save را کليک مي کنيم. SQL Server محدوديت را برمي دارد.
6- Table Designer را مي بنديم
+ نوشته شده در جمعه بیست و نهم شهریور ۱۳۸۷ ساعت 16:27 توسط مدیر وبلاگ
|
ارائه مقالات و پروژه های درخواستی دانشجویی موجود در آرشیو به صورت رایگان