mysql修改表时怎么添加主键约束?

mysql修改表时怎么添加主键约束?,第1张

概述mysql修改表时怎么添加主键约束

MysqL中可以通过“ALTER table 表名 ADD PRIMARY KEY(字段名);”语句在修改数据表时添加主键约束;当在修改表时要设置表中某个字段的主键约束时,要确保设置成主键约束的字段中值不能够有重复的,并且要保证是非空的。@H_502_2@

@H_502_2@@H_502_2@

(推荐教程:mysql视频教程)@H_502_2@

主键(PRIMARY KEY)的完整称呼是“主键约束”,是 MysqL 中使用最为频繁的约束。一般情况下,为了便于 DBMS 更快的查找到表中的记录,都会在表中设置一个主键。@H_502_2@

在创建表时设置主键约束@H_502_2@

在 CREATE table 语句中,通过 PRIMARY KEY 关键字来指定主键。@H_502_2@

在定义字段的同时指定主键,语法格式如下:@H_502_2@

<字段名> <数据类型> PRIMARY KEY [默认值]

示例@H_502_2@

在 test_db 数据库中创建 tb_emp3 数据表,其主键为 ID,sql 语句和运行结果如下。@H_502_2@

MysqL> CREATE table tb_emp3    -> (    -> ID INT(11) PRIMARY KEY,    -> name VARCHAR(25),    -> deptID INT(11),    -> salary float    -> );query OK, 0 rows affected (0.37 sec)MysqL> DESC tb_emp3;+--------+-------------+------+-----+---------+-------+| FIEld  | Type        | Null | Key | Default | Extra |+--------+-------------+------+-----+---------+-------+| ID     | int(11)     | NO   | PRI | NulL    |       || name   | varchar(25) | YES  |     | NulL    |       || deptID | int(11)     | YES  |     | NulL    |       || salary | float       | YES  |     | NulL    |       |+--------+-------------+------+-----+---------+-------+4 rows in set (0.14 sec)

在修改表时添加主键约束@H_502_2@

主键约束不仅可以在创建表的同时创建,也可以在修改表时添加。但是需要注意的是,设置成主键约束的字段中不允许有空值。@H_502_2@

在修改数据表时添加主键约束的语法格式如下:@H_502_2@

ALTER table <数据表名> ADD PRIMARY KEY(<字段名>);

通常情况下,当在修改表时要设置表中某个字段的主键约束时,要确保设置成主键约束的字段中值不能够有重复的,并且要保证是非空的。否则,无法设置主键约束。@H_502_2@

示例@H_502_2@

查看 tb_emp2 数据表的表结构,sql 语句和运行结果如下所示。@H_502_2@

MysqL> DESC tb_emp2;+--------+-------------+------+-----+---------+-------+| FIEld  | Type        | Null | Key | Default | Extra |+--------+-------------+------+-----+---------+-------+| ID     | int(11)     | NO   |     | NulL    |       || name   | varchar(30) | YES  |     | NulL    |       || deptID | int(11)     | YES  |     | NulL    |       || salary | float       | YES  |     | NulL    |       |+--------+-------------+------+-----+---------+-------+4 rows in set (0.14 sec)

修改数据表 tb_emp2,将字段 ID 设置为主键,sql 语句和运行结果如下。
@H_502_2@

MysqL> ALTER table tb_emp2    -> ADD PRIMARY KEY(ID);query OK, 0 rows affected (0.94 sec)Records: 0  Duplicates: 0  Warnings: 0MysqL> DESC tb_emp2;+--------+-------------+------+-----+---------+-------+| FIEld  | Type        | Null | Key | Default | Extra |+--------+-------------+------+-----+---------+-------+| ID     | int(11)     | NO   | PRI | NulL    |       || name   | varchar(30) | YES  |     | NulL    |       || deptID | int(11)     | YES  |     | NulL    |       || salary | float       | YES  |     | NulL    |       |+--------+-------------+------+-----+---------+-------+4 rows in set (0.12 sec)
总结

以上是内存溢出为你收集整理的mysql修改表时怎么添加主键约束?全部内容,希望文章能够帮你解决mysql修改表时怎么添加主键约束?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1150923.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存