SQL Server2008创建约束图解 唯一性约束
机房收费系统个人重构版开始了,但在设计数据库时遇到了写小麻烦,主要是数据库中约束的应用,以前在学习数据库时进行了总结,在刚开始学习时使用的是SQL Server2000 小操作了下,查证了几种约束的作用,但现在升级为 08 版的 SQL所以在操作方式上有了些区别。虽然是小麻烦但是也反映了我们学习的一种习惯,在对知识进行封存后就放到一边,等待下次的调用,知识是要进行反复咀嚼才能消化的。
那闲话少说进入我们今天的主题, 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 列的值只能为男或女。
关闭并保存设计。
致此,数据库中的五种约束情况又复习了一遍,约束确保了数据库中数据的完整性,但只有约束 是 远远不够的。
SQL Server2008创建约束图解 唯一性约束相关推荐
- mysql主键约束和唯一性约束
主键约束和唯一性约束都是索引,它们的区别是: 主键字段可以确保唯一性,但主键字段不能为NULL. 唯一性约束可以确保唯一性,但唯一性约束的字段可以为NULL 唯一性约束对含有NULL的记录不起作用,即 ...
- 约束——非空约束和唯一性约束
1.什么是约束? 约束对应的英语单词:constraint 在创建表的时候,我们可以给表中的字段加上一些约束,来保证这个表中数据的 完整性.有效性!!!约束的作用就是为了保证:表中的数据有效!! 1. ...
- 【MySQL8.0学习笔记】约束:主键约束、自增长约束、非空约束、唯一性约束、默认约束与零填充约束
本文对MySQL数据库的约束相关知识进行了归纳总结,包括主键约束.自增长约束.非空约束.唯一性约束.默认约束与零填充约束. 本专栏长期更新,敬请关注. 文章目录 1 MySQL约束简介 2 主键约束 ...
- SQL Serverver -- 创建财政年度表 (约束)
-- 实例1: 创建财政年度表 (约束) -- 新建表: Create table FiscalYears ( fiscal_year INTEGER NOT NULL PRIMARY KEY, st ...
- 主键约束、唯一性约束、唯一索引
1.主键约束(PRIMARY KEY) 1) 主键用于唯一地标识表中的每一条记录,可以定义一列或多列为主键. 2) 是不可能(或很难)更新. 3) 主键列上没有任何两行具有相同值(即重复值),不允许空 ...
- mysql中主键约束和唯一约束的区别_主键约束和唯一性约束的区别
1.主键约束(PRIMARY KEY) 1) 主键用于唯一地标识表中的每一条记录,可以定义一列或多列为主键. 2) 是不可能(或很难)更新. 3) 主键列上没有任何两行具有相同值(即重复值),不允许空 ...
- mysql 唯一约束_Mysql 唯一性约束添加
一.单列唯一约束 在一列上添加唯一约束,主要是让该列在表中只能有唯一的一行,例如注册邮箱时的邮箱名.手机号等信息,相关操作如下: 1.建表时加上唯一性约束: CREATE TABLE `t_user` ...
- 主键约束和唯一性约束的区别
主键必然是唯一且不为空,但是唯一不一定是主键,而且主键只能有一个,但是唯一约束仅仅是为了保持某些列具有唯一性而已.所以可以有多列 一张表里只能有一个主键约束,可以有多个唯一约束 主键约束的字段不能为n ...
- 使用SQL脚本创建数据库,操作主键、外键与各种约束(MS SQL Server)
在实际开发中,可能很少人会手写sql脚本来操作数据库的种种.特别是微软的MS SQL Server数据库,它的SQL Server Management Studio对数据库的图形化操作极致简便,从而 ...
最新文章
- Spring+SpringMVC+Log4J
- 如何在Python中附加文件?
- Xamarin Anroid开发教程之验证环境配置是否正确
- 发现一个好的索引-阳神
- 别人7天乐,运维还苦逼值班?
- FFMPEG中H.264的算法文档--整理自ffmpeg论坛等
- 面试官:什么是JDK什么是JRE?服务器可以只安装JRE吗?
- requests-get请求
- XRD .txt 格式转 .xrdml格式
- 拉曼光谱避免荧光效应的方法
- 第一次竞赛-A.质数的最大乘积
- Visio使用技巧——改变环形箭头的箭头方向
- brpc internal
- 湖人夺冠,科比MVP!
- 排查线上问题的9种方式
- 手动加密 ESP 设备量产固件并烧录的流程
- 读取Excel文件并用jdbc连接将内容导入MySQL数据库
- 访问SAE_MySql
- 「论文阅读」SCF-Net:Learning Spatial Contextual Features for Large-Scale Point Cloud Segmentation
- layerUI 父子iframe之间的操作
热门文章
- webdynpro 组件重用 传值问题
- Autodesk View and Data API二次开发学习指南
- WinForm下DataGridView导出Excel的实现
- Ucloud香港1h1g云服务器低至126元一年而且可开3年限时
- 容器编排技术 -- Kubernetes 为 Namespace 配置默认的内存请求与限额
- Spring教程 - Spring核心框架教程
- Hystrix面试 - 基于 timeout 机制为服务接口调用超时提供安全保护
- 【TencentOS tiny】深度源码分析(4)——消息队列
- 面试刷题29:mysql事务隔离实现原理?
- jrebel 远程部署 配置记录