محدودیت check تعیین میکند که چه بازه ای از مقادیر و یا داده با چه مشخصاتی میتواند در ستون پایگاه داده قرار بگیرد.
همچنین میتوان برای جدول با توجه به ستونهایش محدودیت check ایجاد کنیم
میخواهیم محدودیت check را هنگام ساخت جدول اعمال کنیم ، به دستورات زیر دقت کنید ، پس از ساخت جدول شما فقط میتوانید مقدار integer را برای P_Id وارد کنید
My SQL:CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (P_Id>0)
) SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
P_Id int NOT NULL CHECK (P_Id>0),
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)
و برای محدود کردن چند ستون به طور همزمان هم از دستور زیر استفاده میکنیم
MySQL / SQL Server / Oracle / MS Access:CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT chk_Person CHECK (P_Id>0 AND City='Sandnes')
)
برای ایجاد دستور check در جدولی که قبلا ساخته شده است از دستور زیر بهره میگیریم
MySQL / SQL Server / Oracle / MS Access:ALTER TABLE Persons
ADD CHECK (P_Id>0)
و همچنین این عمل برای محدودیت چندین ستون به صورت زیر اعمال میشود
MySQL / SQL Server / Oracle / MS Access:ALTER TABLE Persons
ADD CONSTRAINT chk_Person CHECK (P_Id>0 AND City='Sandnes')
برای حذف یک محدودیت check نیز به این صورت عمل میکنیم
SQL Server / Oracle / MS Access:ALTER TABLE Persons
DROP CONSTRAINT chk_Person
مترجم: علیرضا مسگری