问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

SQL中主键属性的唯一性和唯一性约束的区别是什么啊

发布网友 发布时间:2022-04-11 15:24

我来回答

4个回答

懂视网 时间:2022-04-11 19:45

首先说明一点,主键又称主键约束,它也是一种约束,看下它和唯一约束的创建语法:

alter table Person add constraint PK_Id primary key (Id)
alter table Person add constraint UQ_Name unique (Name)

主键和唯一约束都要求字段值唯一,除此外,它们还有如下区别:

·同一张表只能有一个主键,但能有多个唯一约束;
·主键字段值不能为NULL,唯一约束字段值可以为NULL;
·主键字段可以做为其他表的外键,唯一约束字段不可以做为其他表的外键;
·SQLServer默认为主键字段创建聚集索引,为唯一约束字段创建非聚集索引;

主键,唯一,但是不能为空;唯一约束,唯一,但是可以为空

您可能感兴趣的文章:

  • Oracle数据完整性和锁机制简析
  • SQLSERVER实现更改表名,更改列名,更改约束代码
  • 如何获取SqlServer2005表结构(字段,主键,外键,递增,描述)
  • 深入Mysql,SqlServer,Oracle主键自动增长的设置详解
  • SQLSERVER聚集索引和主键(Primary Key)的误区认识
  • sqlserver主键设计的注意点
  • sqlserver数据库主键的生成方式小结(sqlserver,mysql)
  • 小议sqlserver数据库主键选取策略
  • sqlserver 因为选定的用户拥有对象,所以无法除去该用户的解决方法
  • SQLServer2005 批量查询自定义对象脚本
  • SQLServer导出sql文件/表架构和数据操作步骤
  • 详解SQL Server数据库架构和对象、定义数据完整性
  • 热心网友 时间:2022-04-11 16:53

    主键,唯一,但是不能为空;唯一约束,唯一,但是可以为空

    热心网友 时间:2022-04-11 18:11

    作用是一样的,都是用来约束唯一的
    但可以将唯一约束附加到允许空值的列,而只能将主键约束附加到不允许空值的列。

    热心网友 时间:2022-04-11 19:46

    对一个表来说主键只能一个,且字段不能为空,但唯一性约束可以有好几个,允许字段为空。
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 1.在SQL Server 2000,说明主键约束和唯一约束的区别?2.对学生信息表来说,能否将姓名字段设置为主键,为什么 主键约束和唯一性约束的区别 SQL 中 设置唯一约束和设置主键约束,之间有什么关系?这2者有什么区别? 在SQL中什么是主键约束?什么是惟一约束?两者有什么区别? 我装sql server2016失败了, 现在想安装2014版,需要先将2016卸载吗 怎么打开sql server 2016 管理工具 SQL server2016无法使用的问题 sql server安装问题! sql server 2016 ctp是什么版本 sql联合查询怎么写 sql2005怎样解析ntext类型+数据为xml的字段,得到其属性和节点等 我将kettle集成的项目中,发现内存一直释放不掉,求解决: 集群环境下的Oracle使用kettle执行作业时不成功! linux定时调用kettle出现乱码 kettle里面设置了Job定时执行,修改时间重启后,每天仍按原时间和修改后的时间各执行一次 如何解决sql server定时作业调用Kettle job出错 如何解决sql server定时作业调用Kettle job出错的问题 c# DataReader和用DataAdapter来填充DataSet 两者的效率的区别有多大? 用SqlDataReadeer 和 DataSet返回查询结果,两者有什么区别?? C#中的dataset,dataadaper,datareader对象都是怎么用的?急急急急!!!!!!!!!!! SQL什么是唯一约束 什么是主键约束 SQL主键约束和唯一约束有什么区别呢?谢谢 简述唯一约束与主键约束的区别并举例 如何向测试人员介绍约束中的主键和唯一的区别? 简述主键约束和唯一键约束的特征。 sqlserver中创建表时,怎样同时给表和列加入描述信息 SQL某一表新增一个字段并添加文字描述,怎么写语句? 怎么利用SQL Server的设计器在下图中的位置添加一列功能描述? 如何向sqlserver2005的数据库表中插入一列 如何用sqlserver存储过程给一个表添加一列但不改变原来表的结构有一个user表,想在这个表的基础上添加一列 SQLserver中如何在表格中在添加一列,比如 姓名,学号列后在多添加班级一列。 SQLserver2008如何用sql命令插入表中的列,并且在第一列显示,且设置为主键 如何向表中的指定位置添加列!MSSQL 如何安装 SQL Server 2012 sqlserver怎么获取存储过程的返回值 SQLServer 怎样在存储过程中获取另一个存储过程的部分执行结果集 vb6.0获取sqlserver存储过程的返回值 error code 668 sql state 57016怎么处理 DB2不允许对表“xx”执行操作,原因码为"7" com.ibm.db2.jcc.a.SqlException: DB2 SQL error: SQLCODE: -973, SQLSTATE: 5701