, Database Engine . Microsoft SQL Server - : .
. SQL Server .
DEFAULT
NULL
PRIMARY KEY
FOREIGN KEY
UNIQUE
CHECK
. .
DEFAULT
, Database Engine , . , , .
DEFAULT CREATE TABLE. .
, . , , . , , .
CREATE TABLE test_defaults
(date_ins datetime DEFAULT getdate(), --Preferred default definition
mathcol smallint DEFAULT 10 * 2, --Preferred default definition
char2 char(3) DEFAULT 'xyz') --Preferred default definition;
NOT NULL
, NULL.
NULL , NULL . NULL (0), , "". NULL , . NULL, , , .
, NULL, Database Engine NULL, DEFAULT . , NULL, NULL, . NULL , "NULL".
|
|
NULL , , . NULL , , , , .
CHECK
, .
CHECK ( TRUE, FALSE unknown), , . , FALSE, . CHECK. , . .
CHECK , .
chk_id. , , , , .
CREATE TABLE cust_sample
(
cust_id int PRIMARY KEY,
cust_name char(50),
cust_address char(50),
cust_credit_limit money,
CONSTRAINT chk_id CHECK (cust_id BETWEEN 0 and 10000)
)
UNIQUE
.
UNIQUE . NULL ( UNIQUE, NULL ).
UNIQUE UNIQUE . , .
UNIQUE.
PRIMARY KEY
, , .
, , . , . , PRIMARY KEY .
PRIMARY KEY, NULL. - , PRIMARY KEY , .
PRIMARY KEY Database Engine . . , .
|
|
PRIMARY KEY , , PRIMARY KEY .
, vendorID vendorPartID complexPartTable PRIMARY KEY . vendorID vendorPartID.
NULL .
PRIMARY KEY . . . , , , NONCLUSTERED.
4, . , .
UNIQUE PRIMARY KEY , , , , PRIMARY KEY UNIQUE.
partTable partId . , partId , .
CREATE TABLE partTable
(partId int PRIMARY KEY NONCLUSTERED,
name char(30),
weight decimal(6,2),
color char(15));
FOREIGN KEY
. , , , . .
. , , .
FOREIGN KEY .
FOREIGN KEY PRIMARY KEY . , UNIQUE .
FOREIGN KEY NULL. , FOREIGN KEY NULL, , FOREIGN KEY. FOREIGN KEY, NOT NULL.
FOREIGN KEY - , , .
: , . , FOREIGN KEY , . FOREIGN KEY , . Microsoft SQL Server , ON DELETE ON UPDATE.
|
|
ON DELETE , , . ON DELETE :
NO ACTION: .
CASCADE: , , .
SET NULL: , , NULL.
SET DEFAULT: , , .
ON UPDATE , , . NO ACTION, CASCADE, SET NULL SET DEFAULT.