1、主键约束(Primary Key constraint):要求主键列数据唯一,并且不允许为空。
2、唯一约束(Unique constraint):要求该列唯一,允许为空,但只能出现一个空值。
3、检查约束(Check constraint):某列取值范围限制,格式限制等,如有关年龄、邮箱(必须有@)的约束。
4、默认约束(Default constraint):某列的默认值,如在数据库里有一项数据很多重复,可以设为默认值。
5、外键约束(Foreign Key constraint):用于在两个表之间建立关系,需要指定引用主表的哪一列。
扩展资料:
对于存在外键约束的表,如果进行删除非空的外键,可能会出现错误。 如果在 FOREIGN KEY 约束的列中输入非 NULL 值,则此值必须在被引用的列中存在,否则将返回违反外键约束的错误信息。
列级 FOREIGN KEY 约束的 REFERENCES 子句仅能列出一个引用列,且该列必须与定义约束的列具有相同的数据类型。表级 FOREIGN KEY 约束的 REFERENCES 子句中引用列的数目必须与约束列列表中的列数相同。每个引用列的数据类型也必须与列表中相应列的数据类型相同。
是外键约束吧给你个例子吧
CREATE TABLE tblEmployees
( 雇员代号 char(4) not null PRIMARY KEY,
姓名 varchar(20) not null,
身份z号码 char(18) not null UNIQUE,
工资 integer not null CHECK(工资>0)
)
CREATE TABLE tblDepartments
( 部门号 char(2) not null PRIMARY KEY,
部门名称 varchar(30) not null
)
CREATE TABLE tblWork
(
雇员代号 char(4) not null,
部门号 char(2) not null,
开始时间 datetime not null,
备注 varchar(1000) null,
CONSTRAINT PK_tblWork PRIMARY KEY(雇员代号,部门号, 开始时间),
CONSTRAINT FK_tblEmployees FOREIGN KEY (雇员代号) REFERENCES tblEmployees(雇员代号) ON DELETE CASCADE,
CONSTRAINT FK_tblDepartments FOREIGN KEY (部门号) REFERENCES tblDepartments(部门号)
)
第三表的就是建立外键约束了,FOREIGN KEY那里
要是想在已经建立的上添加外键约束,基本同上
只不过是使用 alter 表名 列名 再加Constrain 就行了
用sql命令语句写CHECK约束的格式为CHECK (约束条件)。
如:
CREATE TABLE 成绩信息(
成绩编号 int NOT NULL PRIMARY KEY,
学生编号 nchar(50) NOT NULL,
考试编号 nchar(10) NOT NULL,
课程编号nchar(10) NOT NULL,
分数 nchar(10) NOT NULL CHECK (分数in(between '0' and '100'))
在数据库中,CHECK 约束是指约束表中某一个或者某些列中可接受的数据值或者数据格式。CHECK约束可以应用于一个或者多个列,也可以将多个CHECK 约束应用于一个列。当除去某个表时,对这个表的CHECK 约束也将同时被去除。
扩展资料:
CHECK 约束不接受计算结果为 FALSE 的值。因为空值的计算结果为 UNKNOWN,所以如果赋值表达式中存在这些值,则约束可能会被覆盖而不起作用。如果 CHECK 约束检查的条件对于表中的任何行都不是 FALSE,它将返回 TRUE。
如果刚创建的表没有任何行,则此表的任何 CHECK 约束都视为有效。执行 DELETE 语句时不验证 CHECK 约束。因此,使用特定类型的 CHECK 约束对表执行 DELETE 语句时可能会产生意外结果。
如果没主键则,设置stuNo为主键,不要为设置标识列如果哦与主键则设置唯一约束然后设置检查约束ALTER TABLE stuInfo ADD CONSTRAINT CK_stuNo CHECK(stuNo Like 's253%')go主键或唯一约束保证不重复、检查约束保证是s253格式;主键或唯一键可以用鼠标 *** 作欢迎分享,转载请注明来源:内存溢出
评论列表(0条)