SQL Server 创建约束图解 唯一 主键
SQLServer中有五种约束,Primary Key约束、Foreign Key约束、Unique约束、Default约束和Check约束,今天使用SQL Server2008来演示下这几种约束的创建和使用的方法。
1、Primary Key约束
在表中常有一列或多列的组合,其值能唯一标识表中的每一行。
这样的一列或多列成为表的主键(PrimaryKey)。一个表只能有一个主键,而且主键约束中的列不能为空值。只有主键列才能被作为其他表的外键所创建。
创建主键约束可以右键单击表,选择设计。
选中要创建主键的列,然后单击上面的小钥匙。
也可以右键需要创建主键的列,然后单击小钥匙。
2、Foreign Key约束
外键约束是用来加强两个表(主表和从表)的一列或多列数据之间的连接的。创建外键约束的顺序是先定义主表的主键,然后定义从表的外键。也就是说只有主表的主键才能被从表用来作为外键使用,被约束的从表中的列可以不是主键,主表限制了从表更新和插入的操作。
右键单击需要设置外键的列(此时的表是作为从表在外键中出现),选择关系。
接下来点击添加-->表和列规范。
在主键表中选择主表和主表的主键列。
设置完后保存即可。
3、Unique约束
唯一约束确保表中的一列数据没有相同的值。与主键约束类似,唯一约束也强制唯一性,但唯一约束用于非主键的一列或者多列的组合,且一个表可以定义多个唯一约束。
右键单击要设置的列选择索引/键。
然后单击添加按钮。
选择需要设置的列,可以是一列也可以是多列的组合。
关闭并保存设置。
4、Default约束
若在表中定义了默认值约束,用户在插入新的数据行时,如果该行没有指定数据,那么系统将默认值赋给该列,如果我们不设置默认值,系统默认为NULL。
以学生信息表为例,在表设计器中,为性别sex列填写默认值男。
5、Check约束
Check约束通过逻辑表达式来判断数据的有效性,用来限制输入一列或多列的值的范围。在列中更新数据时,所要输入的内容必须满足Check约束的条件,否则将无法正确输入。
以学生信息表中的sex为例,我们要限制sex列的值只能为男或女。
关闭并保存设计。
致此,数据库中的五种约束情况又复习了一遍,约束确保了数据库中数据的完整性,但只有约束是远远不够的。
转载于:https://www.cnblogs.com/itjeff/p/7009373.html
SQL Server 创建约束图解 唯一 主键相关推荐
- SQL Server2008创建约束图解 唯一性约束
SQL Server2008创建约束图解 复习一下数据库的约束 机房收费系统个人重构版开始了,但在设计数据库时遇到了写小麻烦,主要是数据库中约束的应用,以前在学习数据库时进行了总结,在刚开始学习时使用 ...
- 两个主键怎么设置tsql_如何在sql server中设置两个主键?
展开全部 主键是数据库表的一个重要属性,建立主键可以避免表中存在完全相同的记录,也就是说主键在e68a8462616964757a686964616f31333365633938一张表中的记录值是唯一 ...
- 4 SQL server(定义表的主键 外键 ,记录增删改查)
目录 1. 主键和外键 1.1 通过管理工具创建外键 1.2 通过脚本创建外键关联 2 新增表记录 2.1 图形界面 新增记录: 2.2 SQL脚本新增记录: 2.2.1 插入单条记录 2.2 ...
- SQL server 去重复!要主键!要排序!
在SQL里,似乎去重复又要主键还要排序,那是不可能实现的:但是我把不可能,变成了可能:我做了这么久开发这个问题一直困扰着我,今天把它给解决了,分享给大家学习: SELECT * FROM ( ...
- sql server 主键_SQL Server中人口过多的主键和CE模型的变化
sql server 主键 In this blog post, we are going to talk about another cardinality estimation model enh ...
- 使用SQL脚本创建数据库,操作主键、外键与各种约束(MS SQL Server)
在实际开发中,可能很少人会手写sql脚本来操作数据库的种种.特别是微软的MS SQL Server数据库,它的SQL Server Management Studio对数据库的图形化操作极致简便,从而 ...
- mysql外键约束脚本_使用SQL脚本创建数据库,操作主键、外键与各种约束(MS SQL Server)...
在实际开发中,可能很少人会手写sql脚本来操作数据库的种种.特别是微软的MS SQL Server数据库,它的SQL Server Management Studio对数据库的图形化操作极致简便,从而 ...
- [Err] 23000 - [SQL Server]不能在具有唯一索引 'IX_student_info_2' 的对象 'dbo.student_info' 中插入重复键的行
1.错误描述 [SQL]UPDATE dbo.student_info SET info_name = '' [Err] 23000 - [SQL Server]不能在具有唯一索引 'IX_stude ...
- SQL Server创建表语句介绍
SQL Server创建表是最常见也是最常用的操作之一,下面就为您介绍SQL Server创建表的语句写法,供您参考,希望可以让您对SQL Server创建表方面有更深的认识. USE suntest ...
最新文章
- 黑客之王!韩国神童登顶黑客界的“极限挑战”
- Spring Cloud构建微服务架构:服务容错保护(Hystrix服务降级)
- clipboard_monitor_in_win7
- dbnull和null_NULL和DBNull的区别分析
- CM:How is the version of word installed in client returned to Application server
- 什么从什么写短句_从什么到从什么造句
- 中国体重管理饮料市场趋势报告、技术动态创新及市场预测
- PROFINET 模拟器使用教程
- 广义线性混合模型GLMM
- Hbase 二级索引示意图
- 大学生微信小程序项目总结
- 8.12 腾讯大战360 2133
- Java判断上海自来水来自海上_JavaAPI
- 老有“美女”加你微信?大学生“艳遇”,结果吓一跳...
- Linux搭建泰拉瑞亚(原版/模组/插件)服务器之1.3模组服务器
- STM32F411核心板固件库开发(三) 按键检测
- 学习tensorflow之mac上安装tensorflow
- 一个用 C 语言写的迷你版 2048 游戏,仅仅有 500个字符
- ubuntu16.04安装kinetic ROS记录
- 路径中的'.'和'..'还有'./'和'../'都是什么意思