Knowledge Of MS SQL Server

برای هرچیزی زکاتی است وزکات علم نشر آن است

Knowledge Of MS SQL Server

برای هرچیزی زکاتی است وزکات علم نشر آن است

constraint

يكشنبه, ۳۱ شهریور ۱۳۹۲، ۱۰:۲۴ ب.ظ

Primary key constraint:

این محدودیت  به دو صورت Column Level (در سطح ستون ) و Table level (در سطح جدول) پیاده سازی می شود.

Column Level :یک Primary Key برای یک ستون ایجاد می شود

Table Level : دراین حالت هرگاه بخواهیم چند ستون را با یکدیگربه صورت ترکیبی یک Primary Key در نظر بگیریم پس از پایان تعریف ستون های جدول این Constraint را تعریف میکنیم.


Constriant  ConstraintName     Primary Key(Coulmn1,Column2,…)


مثال:

فرض کنیم جدولی به نام Student با ستون های Id,Student Id,Name ایجاد کردیم وبعد از تعریف ستون ها Constraint مورد نظر را تعریف می کنیم:


Constriant  Student Pk  Primary Key(Id,StudentId)


 

Unique Constraint:

فرض کنید می خواهیم سیستم یک دانشگاه طوری باشد که نتوان شماره شناسنامه های یکسان را وارد کرد.چون شماره شناسنامه تکراری داریم برای جلوگیری از این تکرار از Unique Constraint استفاده می کنیم.این Constraint هم مانند Primary key ،هم به صورت Column Level و هم به صورت Table Level می باشد.

نحوه تعریف این Constriant  مانند Primary Key هست فقط با این تفاوت که به جای کلمه کلیدی   Primary Key ازUnique استفاده می کنیم.

 

نکته ای که باید در اینجا به آن توجه داشته باشیم این است که دریک جدول تنها می توانیم یک Primary Key ولی چندین Uniqueداشته باشیم .

 

Foreign Key Constraint:

برای پیاده سازی Reference ویا Integriety به کار می رود ودر دو نوع Table Level و Column Level می باشد.

 

مثال زیر  کاربرد این Constraint را در نوع Column Level نشان می دهد.

 

create table person

)

Id int not null primary key,

Isn char(10) not null,

name nvarchar(50)not null,

Addressesid int references Addresses(id),

(


 

در سطح Table level دو نکته لازم است :

1.در پیاده سازی جداول ابتدا باید جدول Parent را ایجاد کنید وسپس Detail

2. ستون Foreign Key می تواند با ستون Primary Key جدول Parent همنام نباشد اما باید حتما هم Type باشد.

نحوه تعریف این Constraint درپایان وبعد از تعریف ستون های جدول می باشد که به صورت زیر می باشد

Constraint   Name  Foreign Key   ChildTableName (FieldsName) References  ParentTableName (FieldsName)

 

 

موافقین ۳ مخالفین ۰ ۹۲/۰۶/۳۱
فائزه فاضلی

نظرات  (۲)

۱۵ مهر ۹۲ ، ۱۲:۴۸ سارا زکی زاده
سلام
ممنون از مطلبت. مخصوصا  Unique Constraint.
اگر امکانش هست درباره مواردی که در sql اعداد و .... یکتا تولید می کنه مطلب بگذارید.
ممنون
پاسخ:
چشم،انشااله دوست عزیز
۲۴ بهمن ۹۲ ، ۰۰:۳۴ زینب جهان بخش
خیلی ازش سر درنیاوردم :D
ولی خوب نوشته شده بود جدا :)

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی