mysql数据库操作之唯一键(unique)

[复制链接]
查看2468 | 回复0 | 2020-9-29 20:22 | 显示全部楼层 |阅读模式
mysql数据库操作之唯一键(unique)
区别
主键1、不能重复,不能为空2、一个表只能有一个主键
唯一键1、不能重刻,可以为空2、一个表可以有多个唯一键
例题
  1. -- 创建表的时候创建唯一键
  2. mysql> create table stu26(
  3.     -> id int auto_increment primary key,
  4.     -> name varchar(20) unique    -- 唯一键
  5.     -> );
  6. Query OK, 0 rows affected (0.05 sec)

  7. -- 方法二
  8. mysql> create table stu27(
  9.     -> id int primary key,
  10.     -> name varchar(20),
  11.     -> unique(name)
  12.     -> );
  13. Query OK, 0 rows affected (0.05 sec)

  14. 多学一招:
  15. unique 或 unique key 是一样的
复制代码
通过修改表添加唯一键
  1. -- 将name设为唯一键
  2. mysql> alter table stu28 add unique(name);  

  3. -- 将name,addr设为唯一键
  4. mysql> alter table stu28 add unique(name),add unique(addr);
  5. Query OK, 0 rows affected (0.00 sec)
  6. Records: 0  Duplicates: 0  Warnings: 0

  7. mysql> desc stu28;
  8. +-------+-------------+------+-----+---------+-------+
  9. | Field | Type        | Null | Key | Default | Extra |
  10. +-------+-------------+------+-----+---------+-------+
  11. | id    | int(11)     | NO   | PRI | NULL    |       |
  12. | name  | varchar(20) | YES  | UNI | NULL    |       |
  13. | addr  | varchar(20) | YES  | UNI | NULL    |       |
  14. +-------+-------------+------+-----+---------+-------+
  15. 3 rows in set (0.02 sec)
复制代码
通过show create table 查看唯一键的名字
通过唯一键的名字删除唯一键
  1. mysql> alter table stu28 drop index name;
  2. Query OK, 0 rows affected (0.00 sec)
  3. Records: 0  Duplicates: 0  Warnings: 0
复制代码

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

UID
1
贡献
387
丢币
38902
主题
4607
回帖
116
注册时间
2018-9-25
最后登录
2024-4-16