SQL中的每一张表都必须设有主键吗
来源:互联网 发布:linux网络流量监控 编辑:程序博客网 时间:2024/06/07 02:51
请问各位朋友 SQL中的每一张表都必须设有主键吗?
不设主键行不行?会造成什么问题吗?
非常感谢!
不设主键行不行?会造成什么问题吗?
非常感谢!
nishishui001 | 浏览 11683 次 问题未开放回答
推荐于2016-05-26 07:17:03最佳答案
很明显不是必须设主键的
主键的解释如下:
主关键字(primary key)是表中的一个或多个字段,它的值用于唯一地标识表中的某一条记录。
在两个表的关系中,主关键字用来在一个表中引用来自于另一个表中的特定记录。
主关键字是一种唯一关键字,表定义的一部分。
一个表不能有多个主关键字,并且主关键字的列不能包含空值。主关键字是可选的,并且可在 CREATE TABLE 或 ALTER TABLE 语句中定义
princeeey|2017-8-21 10:45
可以不要的。没有主键就可以有重复记录了,方便恢复记录。一旦有了主键,必须主键列无重复值。回复
耕耘者1294480|2017-4-28 17:04
把概念往这一放有什么用?回复
其他回答
当然不一定咯。。
设置不设置主键嘛。。。要看你的业务或者需求来说。。。
如果你就是简单的对单表操作的话,实在没有必要。
对多张没有关联的表操作的话,不设置也没有什么影响
主键只是说对一种表和表关系的关联而已,还有就是在建主键的时候会自动添加个索引,某些情况下可以增加查询速度
设置不设置主键嘛。。。要看你的业务或者需求来说。。。
如果你就是简单的对单表操作的话,实在没有必要。
对多张没有关联的表操作的话,不设置也没有什么影响
主键只是说对一种表和表关系的关联而已,还有就是在建主键的时候会自动添加个索引,某些情况下可以增加查询速度
本回答被提问者采纳
水中の鱼儿泪 推荐于2016-11-16 05:10:53
评论
44 0
可以没有。
也可以有的。 一个表可以有一个主键,理论是这样,也可以有多个。主键可以保证字段值的唯一性和非空属性,相当于unique,不过unique不约束表的null,而且设置主键,在其他表可以设置这个主键的外键,这样就会存在约束(主键对外键的约束),修改外键,必须先修改主键,而且两个表字段(主键,外键)的值是相等的。
也可以有的。 一个表可以有一个主键,理论是这样,也可以有多个。主键可以保证字段值的唯一性和非空属性,相当于unique,不过unique不约束表的null,而且设置主键,在其他表可以设置这个主键的外键,这样就会存在约束(主键对外键的约束),修改外键,必须先修改主键,而且两个表字段(主键,外键)的值是相等的。
冰封少尉 发布于2008-01-04 10:00
评论
3 5
如果你建立的表是有关联的话 那建议就是最好要设有主键
阅读全文
0 0
- SQL中的每一张表都必须设有主键吗
- SQL中的主键
- SQL中的主键以及联合主键
- Sql server中的主键与外键
- Sql server中的主键与外键
- SQL中的主键和外键
- SQL数据库中的主键与外键
- 外键必须是另一个表的主键吗
- sql-----主键
- SQL主键
- sql 主键
- SQL - 主键
- SQL Server中的联合主键、聚集索引、非聚集索引
- Microsoft SQL Server 2005中的外键表与主键表
- 关于sql server 2005数据库中的主键的属性设置
- 如何分清SQL数据库中的主键与外键
- SQL中的主键和外键以及索引小结
- SQL数据库中的主键与外键介绍
- 让我们考虑一个地图引擎系统。。。
- python
- python中__init__()函数的用法
- 表单事件
- 组件化开发之利用SVN搭建私有SpecRepo
- SQL中的每一张表都必须设有主键吗
- java初体验
- 【23】响应式布局教程
- oracle数据库高水位回收原理及操作方法
- java EE开发之Servlet第十四课:自定义注解Annotation
- 全排列的递归算法
- redis4.0.0 集群安装详细步骤
- U盘安装redhat 7.4的最终解决方案
- es6 中类与对象的一些心得