MySQL添加唯一约束和联合唯一约束(建表后添加)_墨卿风竹的博客-程序员宅基地_mysql联合唯一约束

技术标签: database  mysql  数据库  

MySQL:添加唯一约束和联合唯一约束

在MySQL数据库中,经常会碰到由于业务需要添加唯一键约束,唯一键约束,可以在一个列上添加约束,也可以在多个列上添加唯一约束。

单列唯一约束
在一列上添加唯一约束,主要是让该列在表中只能有唯一的一行,例如注册邮箱时的邮箱名、手机号等信息,相关操作如下:

1.建表时加上唯一性约束:

CREATE TABLE `t_user` (
    `Id` int(11) NOT NULL AUTO_INCREMENT, 
    `username` varchar(18) NOT NULL unique, 
    `password` varchar(18) NOT NULL, 
    PRIMARY KEY (`Id`) 
) ENGINE=InnoDB AUTO_INCREMENT=1018 DEFAULT CHARSET=gbk; 

2.给已经建好的表加上唯一性约束:

ALTER TABLE `t_user` ADD unique(`username`);

或者:

create unique index UserNameIndex on 't_user' ('username');
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_43688472/article/details/123277177

智能推荐

Centos安装zip_王紫又的博客-程序员宅基地_centos zip

简单粗暴sudo yum install -y unzip zipsudo yum list |grep gccsudo yum install gcc-c++sudo yum install unzip

scss值列表_Sass中的数据类型_weixin_40003512的博客-程序员宅基地

数据类型几乎在所有编程语言当中都有,在Sass中也不例外。数据类型是根据不同的用途分的类。例如2是一个数值(number),而SitePoint是一个字符串(string)。在这篇文章中,将涵盖Sass中所有的数据类型(共有七种数据类型),并且通过一些简单的例子来阐述这些数据类型在Sass中如何使用。Nullnull是Sass中最基本的数据类型,它既不是true也不是false,而表示的是空。它没...

win10安装opcenum_U盘安装WIN10时显示 windows无法安装到这个磁盘 选中的磁盘采用GPT分区形式..._CRomputer-罗军的博客-程序员宅基地

一、原因分析win8/win10系统均添加快速启动功能,预装的win8/win10电脑默认都是UEFI引导和GPT硬盘,传统的引导方式为Legacy引导和MBR硬盘,UEFI必须跟GPT对应,同理Legacy必须跟MBR对应。如果BIOS开启UEFI,而硬盘分区表格式为MBR则无法安装;BIOS关闭UEFI而硬盘分区表格式为GPT也是无法安装Windows。(注意事项:转换分区表格式会清空硬盘所有...

Unity 在Game窗口下显示mesh_皮皮#2500的博客-程序员宅基地_unity 显示mesh

Unity 在Game窗口下显示mesh问题描述实现方法问题描述在Scene窗口中,当我们点击一个物体时,会显示出一个物体的纹理:但是在Game窗口中,我们时看不到这个纹理的:目标:希望在Game窗口中可以看到和Scene窗口中一样的纹理效果。实现方法安装插件Wireframe将解压后的工程放到Unity工程Asset文件夹下:在Unity中,新建一个材质球,然后将Wireframe文件夹下的UCLA GameLab Wireframe.sh着色器附加到新建的材质球上:将材质球附加

mui:第一次在AppStore 上线应用_前行中632的博客-程序员宅基地

时间:在第一天上午发布,第二天早上便通过了,所以整体还是很快的 过程:整体是一个开发了差不多有两个月的项目—易沃克,从最初的一无所知的忐忑,到最后的淡然,感觉受益良多,(闲话少说) 这是H5的项目,是基于mui框架的基本模型,总体上是有js和html语言写成,并已经实现了具体的功能,可以投入使用,但作为一个H5文件,不可避免的就是他的性能瓶颈,他的刷新可以说是令人很不满意的,我使用的是appup

关于Redis远程连接Linux虚拟机(Centos 7)或IDEA的问题_老码的博客-程序员宅基地

关于Redis远程连接Linux虚拟机(Centos 7)或IDEA的问题今天在学习Redis中遇到了一点小问题:使用Xshell远程连接虚拟机时,无法成功连接,需要切换到桥接模式使用IDEA远程连接,与SpringBoot项目集成时,无法Ping通,无法成功连接由于桥接模式下ip地址每次启动虚拟机都会不同,也就意味着需要在Xshell中多次配置连接的ip,所以一般我们都选择通过Nat连接。但是虚拟机设置了通过Nat连接后,我发现不能成功连接到Xshell,所以需要以下设置:首先进入Red

随便推点

【洛谷】P1372 又是毕业季I 题解_跑起来要带风!的博客-程序员宅基地

【洛谷】P1372 又是毕业季I 题解原题地址:https://www.luogu.org/problem/P1372题目背景“叮铃铃铃”,随着高考最后一科结考铃声的敲响,三年青春时光顿时凝固于此刻。毕业的欣喜怎敌那离别的不舍,憧憬着未来仍毋忘逝去的歌。1000多个日夜的欢笑和泪水,全凝聚在毕业晚会上,相信,这一定是一生最难忘的时刻!题目描述为了把毕业晚会办得更好,老师想要挑出默契程...

There are 0 datanode(s) running,解决Hadoop启动时,没有启动datanode_闷声$的博客-程序员宅基地

向Hadoop上传文件时出现错误:There are 0 datanode(s) running and no node(s) are excluded in this operation.,用jps命令查看发现datanode没有启动。解决:

transE论文阅读 19年记录的_peaceminusvip的博客-程序员宅基地_transe论文

论文标题:Translating Embeddings for Modeling Multi-relational Data——NIPS2013论文链接https://proceedings.neurips.cc/paper/2013/file/1cecc7a77928ca8133fa24680a88d2f9-Paper.pdfhttps://proceedings.neurips.cc/paper/2013/file/1cecc7a77928ca8133fa24680a88d2f9-Pa.

java jar class_JAVA jar命令(一)-jar打包class文件_数据汪的博客-程序员宅基地

jar包本质上是将所有class文件、资源文件压缩打成一个包(也可以选择不压缩),可选择在jar包中生成META-INF/MANIFEST.MF文件,MANIFEST.MF是清单文件,里面可以记录主类、classpath等信息,供虚拟机使用。接下来的一段时间里,我们将以以下路径学习jar命令和清单文件的相关知识jar打包class文件带包class文件jar打包清单文件的使用在这篇文章里我们将使用...

Hibernate注释大全_zhugeyangyang1994的博客-程序员宅基地

每个持久化POJO类都是一个实体Bean, 通过在类的定义中使用@Entity 注解来进行声明。声明实体[email protected] class Flight implements Serializable {  Long id;  @Id  public Long getId() { return id; }  public void setId(Long

html避免多次点击选中页面文字或者内容时出现蓝色背景_chengchengbox的博客-程序员宅基地

在body、html中添加以下代码*,body,html{ -moz-user-select: none; /*火狐*//*选中文字时避免出现蓝色背景*/ -webkit-user-select: none; /*webkit浏览器*//*选中文字时避免出现蓝色背景*/ -ms-user-select: none; /*IE10*//*选中文字时避免出现蓝色背景*/ user-select: none;/*选中文字时避免出现蓝色背景*/}...