1.not null 非空约束
①强制列不接受空值
②例:创建表时,name varchar(6) not null,

2.unique 唯一性约束
①约束唯一标识数据库表中的每条记录
②unique和primary key都为数据提供了唯一性约束
③primary key 拥有自动定义的Unique约束
④注意:每个表中只能有一个primary key约束,但是可以有多个Unique约束
⑤语法:
1.name int unique
2.unique(column_name)
3.CONSTRAINT uc_PersonID UNIQUE (Id_P,LastName) 添加多个约束
4.alter table table_name add unique(column_name) 增加表中的约束
5.ALTER TABLE table_name DROP CONSTRAINT 主键名 删除约束

3.primary key约束
①约束唯一标识数据库表中的每条记录
②主键必须包含唯一的值
③主键列不能为空
④每个表都应该有个主键,但只能有一个主键
⑤语法:
1.StudentID int not null primary key 创建学生编号为主键
2.primary key(Students) 创建学生编号为主键
3.primary key(StudentID,Email) 创建学生ID和Email为联合主键
⑥为已存在的列创建主键
1.alter table table_name add primary key(column_name)
⑦删除主键约束
1.alter table table_name drop primary key
⑧删除主键约束
1.alter table table_name drop constraint 主键约束名 主键约束名可以使用sp_help查询

4.foreign key约束
①一个表中的foreign key 指向另一个表的primary key
②foreign key约束用于预防破坏表之间连接的动作
③foreign key约束也能防止非法数据插入外键列,因为它必须是指向的那个表的值之一
④语法:
1.foreign key (column_name) references 主表名(主键列名) 创建column_name为主表名的外键
2.column_name int foreign key references 主表名(主键列名) 创建column_name为主表名的外键
3.alter table table_name
                  add foreign key (列名) references 主表名(主键列名) 为已存在的列创建外键
4.alter table table_name drop constraint 外键约束名 删除外键约束(SQL Server oracle)
5.alter table table_name drop foreign key 外键约束名 删除外键约束(Mysql)

5.check 约束
①check约束用于限制列中的值的范围
②如果对个单个列做check约束,那么该列只可以输入特定数值
③如果一个表定义check约束,那么此约束会在特定的列对值进行限制
④语法:
1.StudentID int not null check (StudentID>0) 限制StudentID输入的值要大于0 (SQL Server oracle)
2.StudentID int not null, 限制StudentID输入的值要大于0 (Mysql)
check (StudentID>0)
3.sex varchar(2) not null check(sex='男' or sex='女') 限制sex的性别只能是男或者女
4.alter table table_name add check(列名>0) 向已有的列加入check约束
5.alter table table_name drop constraint check约束名 删除约束 约束名可以用 sp_help table_name查看

6.default约束
①default约束用于向列中插入默认值
②如果没有规定其他的值,那么会将默认值添加到所有的新记录中
③语法:
1.name varchar(10) default '张三' name默认插入张三的名字
2.systime date default gatedate() 插入时间的默认值 getetime()函数为时间的默认值
3.alter table table_name add 列名 set default '数值' 向已有列名中插入默认值
4.alter table table_name drop constraint 约束名 删除默认约束

 

转载于:https://www.cnblogs.com/baili-luoyun/p/11131861.html

sql server 常见约束相关推荐

  1. SQL Server唯一约束

    SQL Server UNIQUE约束简介 SQL Server UNIQUE 约束用于确保存储在列或列组中的数据在表中的行中是唯一的. 以下语句创建一个表: hr.persons ,其 email ...

  2. SQL Server常见数据类型介绍

    数据表是由多个列组成,创建表时必须明确每个列的数据类型,以下列举SQL Server常见数据类型的使用规则,方便查阅 Character 字符串: 数据类型 描述 存储 char(n) 固定长度的字符 ...

  3. sql server unique约束的增加与删除

     首先,创建一张表table_a CREATE TABLE [dbo].[table_a](  [aID] [int] NULL,  [aNum] [int] NULL ) ON [PRIMARY ...

  4. SQL server 常见的SQL语句总结(最全的)

    ---------------------------------日常学习笔记记录--------------------------------- 总结了大量的SQL语句,没有你不会的,只有你不知道 ...

  5. SQL Server 常见的7种约束以及where条件表达式

    一.常见的7种约束 --主键约束(primary key): --唯一约束(unique) --检查约束(check) --默认约束(default)-----for 字段名 --外键约束(forei ...

  6. SQL Server 创建约束图解 唯一 主键

    SQLServer中有五种约束,Primary Key约束.Foreign Key约束.Unique约束.Default约束和Check约束,今天使用SQL Server2008来演示下这几种约束的创 ...

  7. SQL SERVER 2约束的创建,删除,重命名

    文章目录 删除有依赖列 创建表的时候添加约束 len获取字符串长度 between 添加约束 删除约束 sys.objects 查看当前表中有哪些约束 查看约束信息(ID,type,name) 约束重 ...

  8. SQL Server常用约束表达式实例

    ①.性别只能填写'男'和'女' (字段名 in ('男','女') ) 或 (字段名='男' or 字段名='女') ②.某在数字在0到100之间 (字段名>0 and 字段名<100) ...

  9. SQL SERVER IDENTITY 约束的用法

    identity用法: create table [table] ( [id] int primary key IDENTITY(100,1), [name] text ) id从100开始自动序列增 ...

最新文章

  1. 0基础学python难吗-0基础学武汉Python开发课程有多难?该怎么入门?
  2. Python也有做大型游戏的潜力?原来我们小看了Python,无所不能!!
  3. java guava 使用_使用Guava操作基本类型
  4. centos 卸载docker_linux系统Docker安装及卸载
  5. 转Oracle性能参数—经典常用
  6. 虚拟机技术抗黑产!几维安全KiwiVM虚拟机实现全平台全架构防护方案!
  7. 商务统计_13 使用excel拟合曲趋势线
  8. 用verilog实现一个 一位全加器
  9. 计量经济学计算机答案第三章课后答案,庞皓计量经济学第2版课后习题答案
  10. PCL .stl格式转成.pcd格式点云文件
  11. 【毕设论文——必修篇】开题报告要写些什么?这里有参考模板
  12. if的用法及常见问题
  13. 同一服务器两个端口不同的应用session覆盖解决方案
  14. iis 值不在预期的范围错误解决办法
  15. 由淘宝鼠标经过显示头像想起的 定位分析
  16. HDU2091题解——空心三角形
  17. 冷门又实用的Excel技巧知识,还不来看看嘛
  18. 物联网中常提到的M2M究竟是什么?
  19. ubuntu在目录下文件中搜索关键字
  20. vector之resize剖析-曾经的我以为自己真的学会了vector

热门文章

  1. plsql直连数据库教程
  2. MATLAB获取一个目录中的所有文件
  3. SQL语句中between and 范围
  4. RVDS2.2安装及破解步骤
  5. 软文的作用真的有那么神奇吗?
  6. 华为荣耀8青春版计算机在哪里,华为荣耀8青春版
  7. Xilinx中时钟资源:模式时钟管理器(MMCM)的使用
  8. android判断是否json格式,Android判断json格式将错误信息提交给服务器
  9. TDD与FDD技术对比
  10. 学习Linux系统的十一点建议