SQL Server唯一约束
SQL Server唯一约束
SQL Server唯一约束对于一个表中非主键列的指定列,唯一(UNIQUE 约束|:强制非主键上的实体完整性的约束。UNIQUE 约束确保未输入重复值,并创建一个索引以增强性能。)约束确保不会输入重复的值。例如,在 employee 表中 emp_id 列是主键,可以定义一个唯一约束来要求表中社会安全号码 (ssn) 列的项是唯一的。
在数据库关系图中,可以使用"索引/键"属性页创建、修改或删除唯一约束。
1、创建唯一约束
创建唯一约束来确保不参与主键的特定列的值不重复。尽管唯一约束和主键都强制唯一性,但在下列情况下,应该为表附加唯一约束以取代主键约束:
如果要对列或列的组合强制唯一性。可以为表附加多个唯一约束,而只能为表附加一个主键约束。
如果要对允许空值的列强制唯一性。可以为允许空值的列附加唯一约束,而只能将主键约束附加到不允许空值的列。当将唯一约束附加到允许空值的列时,确保在约束列中最多有一行含有空值。
I、在数据库关系图中右击将包含约束的表,然后从快捷菜单中选择"属性"命令。
-或-
为将包含约束的表打开表设计器,在表设计器中右击,然后从快捷菜单中选择"属性"命令。
II、选择"索引/键"选项卡。
III、选择"新建"命令。系统分配的名称出现在"索引名"框中。
IV、在"列名"下展开列的列表,选择要将约束附加到的列。若要将约束附加到多个列,在后续行中选择其它的列。
V、选择"创建 UNIQUE"复选框。
VI、选择"约束"选项。
当保存表或关系图时,唯一约束即创建在数据库中。
如果使用的是 SQL Server,可以控制键值的排序次序以及当存在重复键时所采取的操作。为此,应创建唯一索引取代唯一约束。
2、修改唯一约束
当要更改约束附加到的列、更改约束名称或设置附加属性时,修改唯一约束。
I、在数据库关系图中右击包含约束的表,然后从快捷菜单中选择"属性"命令。
-或-
为包含约束的表打开表设计器,在表设计器中右击,然后从快捷菜单中选择"属性"命令。
II、选择"索引/键"选项卡。
III、从"选定的索引"列表中选择要更改的约束。
IV、完成下表中的操作:
当保存表或关系图时,约束即在数据库内被更新。
3、删除唯一约束
当要删除对包含在约束表达式中的列或列组合中输入值的唯一性要求时,删除唯一约束。
I、在数据库关系图中,右击包含约束列的表,然后从快捷菜单中选择"索引/键"命令。
-或-
为包含约束的表打开表设计器,在表设计器中右击,然后从快捷菜单中选择"索引/键"命令。
II、从"选定的索引"列表中选择唯一约束。
III、选择"删除"按钮。
注意 选择"删除"按钮将导致一个无法撤消的操作,而且不保存对数据库关系图所做的所有其它更改。若要撤消该操作,不保存更改即关闭当前的数据库关系图或表设计器窗口以及所有其它打开的数据库关系图和表设计器窗口。
当保存表或关系图时,约束即从数据库中被删除。
- sql server导入数据csv文件(大容量csv快速内导入sqlserver的解决方法推荐)
- sql server 高并发update 死锁(解密新型SQL Server无文件持久化恶意程序的问题)
- sql server 报错(sql server利用不同语种语言显示报错错误消息的方法示例)
- 查sqlserver锁表语句(Sql Server如何查看被锁的表及解锁的方法)
- SQL Server中@@ROWCOUNT的用法
- sqlserver表分区缺点(SQL Server 公用表表达式CTE实现递归的方法)
- sqlserver常用数据结构图(Sql Server数据库常用Transact-SQL脚本推荐)
- sql server查看之前的代码(SQL Server简单实现数据的日报和月报功能)
- sql server创建的表在哪(浅析SQL Server授予了CREATE TABLE权限但是无法创建表)
- sqlserver自增字段(SQL Server中identity自增的用法详解)
- sqlserver常用配置调整(sql server性能调优 I/O开销的深入解析)
- sql server修改sa密码(sqlserver添加sa用户和密码的实现)
- sql server重建索引
- sql server 视图操作(Sql Server 视图数据的增删改查教程)
- sql server信息管理案例(利用SQL Server数据库邮件服务实现监控和预警)
- sqlserver修改排序规则几种方法(SQL Server 分页编号的另一种方式推荐)
- 每天都吃水果的好处(每天吃水果的好处与功效)
- 苹果15价格(苹果15价格512g官网)
- 春节放假几天(春节放假几天2023法定几天)
- 今天 3月13日,31年前,一个英雄少年感动了中国(今天3月13日31年前)
- 你好,新成理人丨成都理工大学2019级新生开学典礼隆重举行(新成理人丨成都理工大学2019级新生开学典礼隆重举行)
- 这部民警编演的红色话剧,讲述了一个不断追寻的故事(这部民警编演的红色话剧)
热门推荐
- nginx怎么用ssl证书(制作能在nginx和IIS中使用的ssl证书)
- apache错误编码代码(关于Apache默认编码错误 导致网站乱码的解决方案)
- docker架构设计详解(Docker核心原理之 Cgroup详解)
- 检查表单数据是否改变
- navicat for mysql连接测试失败(Navicat连接虚拟机mysql常见错误问题及解决方法)
- python时间类的实现(Python日期时间Time模块实例详解)
- django常用模块(django celery redis使用具体实践)
- laravel队列是如何触发的(laravel 事件/监听器实例代码)
- EasyUI DateBox设置默认值
- sql根据条件查出两条一样的数据(SQL中遇到多条相同内容只取一条的最简单实现方法)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9