1、唯一键约束

特点:

(1)一个表可以有多个唯一键约束

(2)唯一键约束意味着,唯一,可以为NULL

(3)唯一键的约束名可以自己指定,也可以默认,

如果默认的话,一般如果单列唯一,默认就是列名,

如果是多列组合唯一,那么默认是该组合第1列的名称。

(4)创建唯一键约束,也会在对应列上建立索引。

而且删除唯一键约束的方式是通过删除对应索引来实现的。

2、唯一键约束也是分为两种

(1)单列的唯一键

(2)多列组合的唯一键

3、建表时如何指定唯一键

create table 【数据库名.】表名称(

字段名1 数据类型 primary key,

字段名2 数据类型 unique key, #只适用于单列的唯一键

。。。。

);

create table 【数据库名.】表名称(

字段名1 数据类型 primary key,

字段名2 数据类型,

。。。。,

unique key(字段列) #既适用于单列,也适用于多列

);

create table books(

bid int primary key,

bname varchar(20) unique key,

price double

);

insert into books values

(1,'《从入门到放弃》',100),

(2,'《从入门到放弃》',88);

ERROR 1062 (23000): Duplicate entry '《从入门到放弃》' for key 'bname'

insert into books values

(1,'《从入门到放弃》',100),

(2,'《从入门到成功》',88);

4、建表后如何指定唯一键约束

alter table 【数据库名.】表名称 add unique key(字段列表);

create table books(

bid int primary key,

bname varchar(20) ,

price double

);

alter table books add unique key(bname);

5、删除唯一键约束

alter table 【数据库名.】表名称 drop index 索引名;

alter table books drop index bname;

6、如何查看某个表格的索引名

show index from 【数据库名.】表名称;

show index from books;

标签:约束,bname,books,key,MySQL,table,唯一

来源: https://blog.csdn.net/qq_45442483/article/details/109965160

mysql创建约束时的约束名称,MySQL唯一键约束相关推荐

  1. mysql创建表时外连接_4.mysql数据库创建,表创建模等模板脚本,mysql_SQL99标准的连接查询(内连接,外连接,满外连接,交叉连接)_MySQL...

    -- 用root用户登录系统,执行脚本 -- 创建数据库 create database mydb61 character set utf8 ; -- 选择数据库 use mydb61; -- 增加 ...

  2. mysql创建表时设置外键_mysql创建表时设置外键约束的方法

    mysql创建表时设置外键约束的方法 发布时间:2020-06-17 15:54:11 来源:亿速云 阅读:312 作者:元一 MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中, ...

  3. oracle与mysql创建表时的区别

    oracle创建表时,不支持在建表时同时增加字段注释.故采用以下方式: #创建表 CREATE TABLE predict_data as (id integer NOT NULL, uid varc ...

  4. MySQL创建数据库时指定编码和用户授权

    为什么80%的码农都做不了架构师?>>>    MySQL创建数据库时指定编码和用户授权 转载于:https://my.oschina.net/michao/blog/2989144

  5. php指定编码创建,MYSQL创建数据库时指定编码

    mysql 创建 数据库时指定编码很重要,很多开发者都使用了默认编码,但是我使用的经验来看,制定数据库的编码可以很大程度上避免倒入导出带来的乱码问题. 我们遵循的标准是,数据库,表,字段和页面或文本的 ...

  6. mysql特殊字段名称_Mysql必读MySQL创建带特殊字符的数据库名称方法示例

    <MysqL必读MysqL创建带特殊字符的数据库名称方法示例>要点: 本文介绍了MysqL必读MysqL创建带特殊字符的数据库名称方法示例,希望对您有用.如果有疑问,可以联系我们. 文章抓 ...

  7. mysql 数据库名称 特殊字符_Mysql必读MySQL创建带特殊字符的数据库名称方法示例...

    <Mysql必读MySQL创建带特殊字符的数据库名称方法示例>要点: 本文介绍了Mysql必读MySQL创建带特殊字符的数据库名称方法示例,希望对您有用.如果有疑问,可以联系我们. MYS ...

  8. ORA-02437: cannot validate(主键或唯一键约束名) - primary key violated

    今天在对现有表建立唯一索引时遇到该Ora异常 ORA-02437: cannot validate(主键或唯一键约束名) - primary key violated 主键或唯一键的数据有重复值,一般 ...

  9. mysql创建表时打错了怎么修改_MySQL 创建,修改和删除表

    登录数据库系统: 其中,"-h"参数指连接的主机名,因此此处是连接本机,所以后面的内容为localhost: "-u"参数表示用户名,此处的用户名为 root; ...

最新文章

  1. no argument specified with option /LIBPATH:错误的解决
  2. SPPNet网络结构
  3. 随机访问类(RandomAccessFile)
  4. [置顶] Java程序员们读什么书决定了对未来职业方向的选择
  5. c语言删除成绩记录的代码,学校让用c语言编的成绩管理系统,删除的代码有点问题,求教...
  6. linux 新开窗口到最前,怎么设置一个窗口总是在电脑桌面的最前
  7. feign响应拦截_[Spring cloud 一步步实现广告系统] 11. 使用Feign实现微服务调用
  8. Python的运算符和编码
  9. BZOJ.1024.[SCOI2009]生日快乐(记忆化搜索)
  10. Mapreduce的工作流程
  11. SPFA ----模板 O(kE) (k一般不超过2)
  12. “630”落幕 光伏何去何从?
  13. 【组合数学+动态规划】在如下8*6的矩阵中,请计算从A移动到B一共有____种走法。要求每次只能向上或向右移动一格,并且不能经过P。...
  14. tcp socket编程 java_JAVA TCP Socket编程 计算题
  15. 新网银行杯数据科学竞赛复赛第八名总结
  16. MD5加密、Base64加密解密
  17. 嗅探对方机器,获取机器键盘记录
  18. stm32制作CAN适配器2--兼容使用周立功上位机
  19. Java微服务开发指南-集群管理、失败转移和负载均衡的实践(下)
  20. 光伏电站清扫机器人_光伏电站清扫机器人_雷曼科林

热门文章

  1. pytorch-pretrained-bert的模型下载慢的问题
  2. Webpack构建性能优化指南
  3. Android官方开发文档Training系列课程中文版:Activity测试之测试环境配置
  4. Android官方开发文档Training系列课程中文版:OpenGL绘图之添加动态效果
  5. 笔记:《突破现实的困境:趋势、禀赋与企业家的大战略》
  6. 基于改进YOLO v3网络的夜间环境柑橘识别方法
  7. Dubbo:com.alibaba.dubbo.rpc.RpcException: Failed to invoke the method 问题的解决
  8. error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“MD_DynamicRelease”...
  9. [vagrant]vagrant centos静态ip设置
  10. 2012/8/3 Extjs使用TabPanel时需要注意的问题