SQL知识点——约束

简介: 在表数据操作时,有一个非常常用的知识点——约束,小伙伴们听到的外键约束也是我们这篇文章所要讲述的知识点之一,只有掌握了这个知识点,才有利于学习接下来的知识点,形成完整的知识体系

一、前言


在表数据操作时,有一个非常常用的知识点——约束,小伙伴们听到的外键约束也是我们这篇文章所要讲述的知识点之一,只有掌握了这个知识点,才有利于学习接下来的知识点,形成完整的知识体系


二、概述


  • 作用于表中字段上的规则,用于限制存储在表中的数据
  • 目的是确保数据库中数据正确、有效和完整


三、分类


约束 描述 关键字
主键约束 唯一地标识标识表中行记录 PRIMARY KEY
唯一约束 保证该字段所有数据唯一、不重复 UNIQUE
外键约束 建立表与表之间的数据联系 FOREIGN KEY
检查约束 限制输入到一个列或者多个列的取值范围 CHECK
默认约束 为字段指定默认值 DEFAULT
非空约束 限制该字段的数据不能为NULL NOT NULL


四、各约束的使用


1.NOT NULL约束


使用T-SQL命令方法创建自定义数据类型myName2为Nvarchar(20),不允许为空


CREATE TYPE myName2 FROM Nvarchar(20) NOT NULL


2.DEFAULT约束


使用T-SQL命令在School1数据库中创建表中字段


字段


列名 数据类型 长度 备注
Sex char 2 默认为“男”


Sex char(2) DEFAULT('男') CHECK(Sex in('男','女')),


3.CHECK约束


使用T-SQL命令在School1数据库中创建表中字段


字段


列名 数据类型 长度 备注
Sex char 2

其值只能为“男”或“女”


4.PRIMARY KEY约束


使用T-SQL命令方法创建列CID,数据类型为myID,设为主码


CID myID PRIMARY KEY


5.UNIQUE约束


使用T-SQL命令方法创建列IDCardNo,并让值为惟一


IDCardNo myID UNIQUE


6.FOREIGN KEY约束


使用T-SQL命令方法创建列CID,数据类型为myID,添加外键引用,参照CInfo中字段CID


ADD FOREIGN KEY(CID) REFERENCES CInfo(CID)


五、结语


该知识点比较重要,各位小伙伴可以在SQL Sever或者DG上自己试验一下

相关文章
|
8月前
|
SQL 测试技术 数据处理
软件测试|SQL DEFAULT约束怎么用?
软件测试|SQL DEFAULT约束怎么用?
66 0
|
8月前
|
SQL 数据采集 关系型数据库
软件测试|一篇文章带你深入理解SQL约束
软件测试|一篇文章带你深入理解SQL约束
73 0
|
17小时前
|
SQL 存储 关系型数据库
MySQL索引原理(索引、约束、索引实现、索引失效、索引原则)以及SQL优化
MySQL索引原理(索引、约束、索引实现、索引失效、索引原则)以及SQL优化
138 1
|
17小时前
|
SQL Oracle 关系型数据库
SQL PRIMARY KEY 约束- 唯一标识表中记录的关键约束
SQL NOT NULL 约束用于强制确保列不接受 NULL 值。这意味着该字段始终包含一个值,而不允许插入新记录或更新记录时不提供此字段的值。
96 0
|
17小时前
|
SQL Oracle 关系型数据库
SQL FOREIGN KEY 约束- 保障表之间关系完整性的关键规则
SQL FOREIGN KEY 约束用于防止破坏表之间关系的操作。FOREIGN KEY 是一张表中的字段(或字段集合),它引用另一张表中的主键。具有外键的表称为子表,具有主键的表称为被引用表或父表。
90 0
SQL FOREIGN KEY 约束- 保障表之间关系完整性的关键规则
|
7月前
|
SQL 数据管理
SQL 6大约束 以及 数据管理(增删改查)
SQL 6大约束 以及 数据管理(增删改查)
|
8月前
|
SQL
删除SQL表数据时存在约束的解决方法
删除SQL表数据时存在约束的解决方法
143 0
|
8月前
|
SQL 关系型数据库 MySQL
SQL进阶之约束、索引
本实验带您学习SQL约束、索引、ALTER TABLE语句和AUTO INCREMENT字段的使用方法。
57 0
|
10月前
|
SQL 关系型数据库 MySQL
SQL——五大约束
SQL——五大约束
|
10月前
|
SQL 存储 数据库
SQL Server——规则是什么?规则和约束有什么不同?
是单独的SQL Server对象,可以关联到一个或几个表中的一列或几列。它可以使用多种方式来完成对数据值的检验,可以使用函数返回验证信息,也可以使用关键字BETWEEN、LIKE和IN完成对输入数据的检查