可以不设置主键。设置主键是为了使你的数据表有一个聚集索引的效果。提高在查询时的效率。但设置主键并不是必须的。
这个是依照具体情况而定的。
Ⅱ 请问可以既不是主键也不是外键吗
可以。一个表如果有多个字段,则除一个字段要设置为了主键外,其余都可以设置为既不是主键也不是外键,如果一个表就一个字段,那么可以不设置为主键,但查询时会报错。
Ⅲ mysql数据库必须设置主键吗
不是必须的
设置主键的目的是为了防止重复
还有索引,这个为了提高速度
Ⅳ SQL数据库表可以没有主键吗
可以没有。
但是不推荐,因为那样会使查询效率低下
如果数据量不大的话可以不加
Ⅳ 数据库可以没有主键么,如果可以怎么取消已有的主键
可以没有主键,要是想取消的话 就修改一下字段,让那个为主键的变成平常的字段,然后就可以取消了,
Ⅵ 数据库表中可以不设置主键吧
我主要说下设和不设有啥区别:
比如:
张三的身份证号为123456
李四的身份证号为012345
设置身份证号为主键后,那么数据库就约束你身份证号不能重复,不能为空,那么:
你向数据库表插入王五的身份证号为123456,则提示你主键不能重复之类的错误;
也许你要问,那就是保证不重复吗?主键可以保证不重复,并且不能为空,如果仅仅保证不重复的效果,可以只设置为索引就行了;
最后,主键可以是单字段主键,也可以2个或多个字段合并在一起形成联合主键。
Ⅶ SQL中的每一张表都必须设有主键吗
SQL中不是必须设置主键。
主关键字(primary key)的意思是表中的一个或多个字段,它的值用于唯一地标识表中的某一条记录。
在两个表的关系中,主关键字用来在一个表中引用来自于另一个表中的特定记录,主关键字是一种唯一关键字,表定义的一部分。
一个表不能有多个主关键字,并且主关键字的列不能包含空值。主关键字是可选的,并且可在 CREATE TABLE 或 ALTER TABLE 语句中定义。主键只是说对一种表和表关系的关联而已,还有就是在建主键的时候会自动内添加个索引,某些情况下可以增加查询速度容,如果只是简单的对单表操作的话,没有必要去设置主键。
(7)数据库不用主键可以吗扩展阅读:
结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
Ⅷ 数据库表可以没有主键吗
可以没有。
但是不推荐,因为那样会使查询效率低下 如果数据量不大的话可以不加
Ⅸ 数据库可以不用主键吗
数据库不存在主键这个词。
数据表才有主键。数据库和数据表是两个概念。
不建关系的表可以不用主键。但要建立关系,就必须建立主键。否则对应表或者字段无法识别对应方式。
Ⅹ 数据库表中可否没有主键,只有外键
外键是依赖于主键存在的,不可以没有主键只有外键