如果是对多个列增加 UNIQUE 约束,通过 ADD UNIQUE KEY 处理。
成都创新互联公司主营永春网站建设的网络公司,主营网站建设方案,重庆APP开发,永春h5小程序开发搭建,永春网站营销推广欢迎永春等地区企业咨询
mysql CREATE TABLE test_unique(
- id INT,
- name VARCHAR(10),
- value VARCHAR(10)
- );
Query OK, 0 rows affected (0.08 sec)
mysql ALTER TABLE test_unique
- ADD UNIQUE KEY(name, value);
Query OK, 0 rows affected (0.13 sec)
Records: 0 Duplicates: 0 Warnings: 0
创建表:create table 表名 (字段名 int(10) primary key not null unique auto_increment);
int(10) 数字类型 长度为10
primary key主键 非空且唯一
NOT NULL不能为空 必填
unique 唯一约束,该内容必须唯一
auto_increment主键自增长 从1开始,步长为1
如果已经创建可修改字段的类型及..:alter table 表名 modify 字段名 ................;
解决方案:先删除唯一索引,再在当前字段创建普通索引,参考下列说明以及SQL:
普通索引
普通索引(由关键字KEY或INDEX定义的索引)的唯一任务是加快对数据的访问速度。因此,应该只为那些最经常出现在查询条件(WHEREcolumn=)或排序条件(ORDERBYcolumn)中的数据列创建索引。只要有可能,就应该选择一个数据最整齐、最紧凑的数据列(如一个整数类型的数据列)来创建索引。
唯一索引
普通索引允许被索引的数据列包含重复的值。比如说,因为人有可能同名,所以同一个姓名在同一个“员工个人资料”数据表里可能出现两次或更多次。
如果能确定某个数据列将只包含彼此各不相同的值,在为这个数据列创建索引的时候就应该用关键字UNIQUE把它定义为一个唯一索引。这么做的好处:一是简化了MySQL对这个索引的管理工作,这个索引也因此而变得更有效率;二是MySQL会在有新记录插入数据表时,自动检查新记录的这个字段的值是否已经在某个记录的这个字段里出现过了;如果是,MySQL将拒绝插入那条新记录。也就是说,唯一索引可以保证数据记录的唯一性。事实上,在许多场合,人们创建唯一索引的目的往往不是为了提高访问速度,而只是为了避免数据出现重复。
删除索引
可利用ALTER TABLE或DROP INDEX语句来删除索引。类似于CREATE INDEX语句,DROP INDEX可以在ALTER TABLE内部作为一条语句处理,语法如下。
DROP INDEX index_name ON talbe_name
ALTER TABLE table_name DROP INDEX index_name
ALTER TABLE table_name DROP PRIMARY KEY
创建索引
在执行CREATE TABLE语句时可以创建索引,也可以单独用CREATE INDEX或ALTER TABLE来为表增加索引。
ALTER TABLE
ALTER TABLE用来创建普通索引、UNIQUE索引或PRIMARY KEY索引。
ALTER TABLE table_name ADD INDEX index_name (column_list)
ALTER TABLE table_name ADD UNIQUE (column_list)
ALTER TABLE table_name ADD PRIMARY KEY (column_list)
在添加或变更表结构时,把id字段设置为整型,下面的选项就会出现auto increment的选择框,勾选中就可以了.
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`);
mysql主键索引和唯一索引
1.主键一定是唯一性索引,唯一性索引并不一定就是主键;
2.一个表中可以有多个唯一性索引,但只能有一个主键;
3.主键列不允许空值,而唯一性索引列允许空值。
1、首先打开Navicate,连接到数据库,打开表设计页面。
2、然后点击切换到索引,打开索引界面。
3、设置索引名,按下选择栏,打开栏位页面这里显示的是表的字段,选择要设置唯一索引的字段。
4、然后按下索引类型的下拉按钮,选择unique就是唯一索引的意思。
5、最后按下索引方式选择btree,按下快捷键Crtl+S保存就完成唯一索引设置了。