什么是SQL里面的约束条件

什么是SQL里面的约束条件,第1张

SQL 约束(Constraints)

SQL 约束用于规定表中的数据规则。

如果存在违反约束的数据行为,行为会被约束终止。

约束可以在创建表时规定(通过 CREATE TABLE 语句),或者在表创建之后规定(通过 ALTER TABLE 语句)。

本回答来自:SQL 约束(Constraints)_树懒学堂

SQL CREATE TABLE + CONSTRAINT 语法

一、约束的分类

在SQLServer中,有3种不同类型的约束。

1、实体约束

实体约束是关于行的,比如某一行出现的值就不允许出现在其他行,例如主键。

2、域约束

域约束是关于列的,对于所有行,某一列有那些约束,例如CHECK约束。

3、参照完整性约束

如果某列的值必须与其他列的值匹配,那就意味着需要一个参照完整性约束,例如外键。

二、约束命名搜索

在学习约束之前,首先来了解下为约束命名需要注意哪些地方。

SQLServer在我们不提供名称时,会自动创建名称,但是由系统自动创建的名称并不是特别有用。

例如,系统生成的主键名称可能是这样的:PK_Employees_145C0A3F。

PK代表主键(primary key),Employees代表在Employees表中,而剩下的“145C0A3F”部分是为了保证唯一性而随机生成的值。只有通过脚本创建才会得到这种值,如果是通过Managerment Studio创建表,那么就直接是PK_Employees。

用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 语句时可能会产生意外结果。

以上就是关于什么是SQL里面的约束条件全部的内容,包括:什么是SQL里面的约束条件、数据库约束怎么写、怎么用sql命令语句写check约束等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9545514.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存