MySQL主键约束-PRIMARY KEY
文章目录
- 建表时设置主键约束
- 1.单字段主键
- 2.联合主键
- 修改表属性时添加主键约束
- 删除主键约束
主键即主键约束。分为单字段主键和多字段组合主键。
使用主键时,应注意:
1.每个表只能有一个主键
2.主键不能为NULL,不允许重复,必须唯一标识一条记录
3.联合主键需唯一且最小,即去掉联合主键中的任一字段,剩余字段构成的主键值不唯一
接下来,介绍设置主键约束和删除主键约束的方法
建表时设置主键约束
1.单字段主键
(1) 在定义字段时,指定主键
# 语法1:
CREATE TABLE <数据表>
(<字段名> <数据类型> PRIMARY KEY -- 在定义字段时指定主键
);
# 示例1:
# 在数据库中创建数据表table_example1,主键为id
CREATE TABLE table_example1
(id INT(10) PRIMARY KEY,name VARCHAR(20)
);
表结构如下图所示
(2) 在定义完字段后指定主键
# 语法2:
CREATE TABLE <数据表>
(<字段名> <数据类型> ,PRIMARY KEY(<字段名>) -- 在定义完字段后指定主键
);
# 示例2:
# 在数据库中创建数据表table_example2,主键为id
CREATE TABLE table_example2
(id INT(10),name VARCHAR(20),PRIMARY KEY(id),
);
表结构如下图所示
说明:语法1与语法2定义的表结构一样,且MySQL存储的建表语句一样,均为语法2所示
2.联合主键
联合主键表示该数据的主键有多个字段组成,一般在单字段主键无法满足需求时使用。
注意:联合主键只能在定义完所有的字段后指定,不能直接在字段明后指定主键(也无法指定)
# 语法3:
CREATE TABLE <数据表>
(<字段1> <数据类型>,<字段2> <数据类型>,PRIMARY KEY(<字段1>,<字段2>)
);
# 示例3:
# 创建数据表table_example3,主键约束为id,name的联合主键
CREATE TABLE table_example3
(id INT(10),name VARCHAR(20),PRIMARY KEY(id,name)
);
table_example3表结构如下图所示:
修改表属性时添加主键约束
如在建表时未添加主键约束,可通过修改表属性 添加主键约束
此时,待设为主键的字段不允许有NULL、重复值
# 语法:
ALTER TABLE <数据表> ADD PRIMARY KEY(<字段名>); -- 修改表属性时添加主键约束
# 示例:
# 将字段id设为无主键表的主键约束
# 1.新建无主键约束的数据表
CREATE TABLE table_example4
(id INT(10),name VARCHAR(20)
);
table_example4表结构如下图:
# 2.修改表table_example4,将id设为主键
ALTER TABLE table_example4 ADD PRIMARY KEY(id);
修改主键约束后table_example4表结构如下:
注意id字段对应的Key列值的变化,有空白变为"PRI",即id被指定为主键
删除主键约束
# 语法:
ALTER TABLE <数据表> DROP PRIMARY KEY(<字段名>);
ALTER TABLE <数据表> DROP PRIMARY KEY; -- 一张表中只有一个主键,所以删除主键约束可以不用指定主键名,两行代码效果一样
# 示例:
# 删除数据表table_example4中的主键约束
ALTER TABLE table_example4 DROP PRIMARY KEY;
删除主键约束后table_example4的表结构如下图所示:
MySQL主键约束-PRIMARY KEY相关推荐
- 主键约束(PRIMARY KEY) [MySQL][数据库]
主键约束(PRIMARY KEY) 主键约束的特点: 主键约束相当于唯一性约束+ 非空约束,主键约束不允许重复,也不允许出现空值 一个表最多只能有一个主键约束,建立主键约束可以在列级别创建,也可以再表 ...
- SQL约束(主键约束 primary key、外键约束 foreign key、唯一约束unique 、CHECK约束)
注意: A.表中有数据不能创建约束 B.视图下设置后,要点击保存(只有保存后在才看的到) c 别忘了,点刷新,才会出来呀! 1.主键约束 primary key 主键是每行的唯一标识符,仅仅通过它 ...
- MySQL主键(PRIMARY KEY)
"主键(PRIMARY KEY)"的完整称呼是"主键约束".MySQL 主键约束是一个列或者列的组合,其值能唯一地标识表中的每一行.这样的一列或多列称为表的主键 ...
- 2、MySQL主键(PRIMARY KEY)
主键(PRIMARY KEY)的完整称呼是"主键约束",是 MySQL 中使用最为频繁的约束.一般情况下,为了便于 DBMS 更快的查找到表中的记录,都会在表中设置一个主键. 主键 ...
- MySQL数据库——MySQL主键(PRIMARY KEY)
主键(PRIMARY KEY)的完整称呼是"主键约束",是 MySQL 中使用最为频繁的约束.一般情况下,为了便于 DBMS 更快的查找到表中的记录,都会在表中设置一个主键. 主键 ...
- MySQL主键(primary key)的作用
分享一个我的公众号,最近突然想玩公众号,之前做过一段时间前端开发,考虑到现在应用程序越来越多,未来社会一定是一个充满"只有你想不到,没有你做不到"的App的世界!而微信小程序又给我 ...
- MySQL主键约束(PRIMARY KEY ,PK)
MySQL主键约束(PRIMARY KEY ,PK) 在数据库中使用过程中 如果 想将某个字段作为唯一标识,标记所有内容时,则可以使用PK 约束进行设置.即PK约束在创建数据库表时为某些字段加上&qu ...
- mysql中的主键关键字_MySQL主键(PRIMARY KEY)
"主键(PRIMARY KEY)"的完整称呼是"主键约束".MySQL 主键约束是一个列或者列的组合,其值能唯一地标识表中的每一行.这样的一列或多列称为表的主键 ...
- mysql增加primary key_MySQL主键(PRIMARY KEY)
"主键(PRIMARY KEY)"的完整称呼是"主键约束".MySQL主键约束是一个列或者列的组合,其值能唯一地标识表中的每一行.这样的一列或多列称为表的主键, ...
最新文章
- wampsever的mysql密码_WampServer修改Mysql密码的步骤
- doctype的三种类型
- CentOs7中安装sonarQube服务系列------1.CentOS7中Docker的安装
- qt中xml文件的更新
- javascript学习笔记之入门
- 20190808:买卖股票的最佳时机
- 奚恺元《别做傻瓜做的事》
- EChart:基础学习
- java技术学习路线
- 【RDKit】Python化学包RDkit的教程
- 电脑版的微信客户端也能刷朋友圈啦
- JavaScript 资源大全中文版
- Bable的基本使用
- Ubuntu的root
- 2022年csdn最全的Python练手经典趣味编程100例(部分
- ElasticSearch搜索引擎详解-持续更新中
- 使用 OpenCV-Python 识别答题卡判卷
- ElasticSearch教程与实战:从搭建服务到Spring Boot整合
- WorkLess可量化的团队协作软件源码下载
- 联发科发布旗舰芯片天玑9200,创新散热封装技术实现能效进一步突破
热门文章
- CodeForces - 14E Camels【DP】
- 怎么让input控件,填充满td
- 【网络】DPDK的基本原理|DPDK和RDMA的区别
- c语言规定 标识符由,【填空题】C语言的标识符命名规则规定标识符可以由字母数字和下划线组成,首字符不能是 。 (4.0分)...
- PTA L1-020 帅到没朋友 (20 分)(C++)
- jquery跳转、刷新页面大全
- 国资优选安全正规:个人理财方案与家庭理财方案有区别吗?
- Vue 学习——表格列表数据显示百分号%、显示数字改为自定义内容、数据表头下拉、点击筛选数据
- Keystone基本命令
- Protel 2004 的PCB中整体修改元件的技巧