قيود التحقق من SQL
قيود التحقق من SQL
يتم CHECK
استخدام القيد للحد من نطاق القيم التي يمكن وضعها في عمود.
إذا حددت CHECK
قيدًا على عمود ، فسيسمح فقط بقيم معينة لهذا العمود.
إذا قمت بتعريف CHECK
قيد على جدول ، فيمكنه تحديد القيم في أعمدة معينة بناءً على القيم الموجودة في أعمدة أخرى في الصف.
تحقق من SQL في إنشاء جدول
ينشئ SQL التالي CHECK
قيدًا على عمود "العمر" عند إنشاء جدول "الأشخاص". يضمن CHECK
القيد أن يكون عمر الشخص 18 عامًا أو أكثر:
MySQL:
CREATE TABLE Persons
(
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
CHECK (Age>=18)
);
خادم SQL / Oracle / MS Access:
CREATE TABLE Persons
(
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int CHECK (Age>=18)
);
للسماح بتسمية CHECK
قيد ، ولتحديد
CHECK
قيد على أعمدة متعددة ، استخدم بناء جملة SQL التالي:
MySQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
City varchar(255),
CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')
);
فحص SQL على ALTER TABLE
لإنشاء CHECK
قيد على عمود "العمر" عند إنشاء الجدول بالفعل ، استخدم SQL التالي:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CHECK (Age>=18);
للسماح بتسمية CHECK
قيد ، ولتحديد
CHECK
قيد على أعمدة متعددة ، استخدم بناء جملة SQL التالي:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CONSTRAINT CHK_PersonAge CHECK (Age>=18 AND City='Sandnes');
قم بإسقاط قيد الاختيار
لإسقاط CHECK
قيد ، استخدم SQL التالي:
خادم SQL / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT CHK_PersonAge;
MySQL:
ALTER TABLE Persons
DROP CHECK CHK_PersonAge;