教程集 www.jiaochengji.com
教程集 >  数据库  >  mysql  >  正文 mysql索引管理实例(主键索引与唯一索引)

mysql索引管理实例(主键索引与唯一索引)

发布时间:2016-04-24   编辑:jiaochengji.com
本文介绍了mysql索引的创建与管理的内容,包括mysql主键索引、唯一索引的相关知识,有需要的朋友参考下。

在管理mysql数据时,若不希望数据表中有重复记录,可以给表添加一个联合唯一索引。

本节就介绍下mysql索引管理的相关内容。

例如,user表中有user_id,user_name两个字段,如果不希望有两条一摸一样的的user_id和user_name,我们可以给user表添加两个字段的联合唯一索引:
 

复制代码 代码示例:
alter table user add unique index(user_id,user_name);
 

这样当向表中添加相同记录的时候,会返回1062的添加失败信息。
但是有一种情况是表中已经有n个重复的记录,这时才想起来要添加唯一索引,再执行上面的操作时,数据库会提示已有重复的记录了,建立索引失败。

可以用下面的操作:
 

复制代码 代码示例:
alter ignore table user add unique index(user_id,user_name);

它会删除重复的记录(别怕,会保留一条),然后建立唯一索引,高效而且人性化。

尤其是绿色的那条sql,在建立索引的同时删除了重复数据,相当有用。

二,查看索引  show index from 数据库表名
 

alter table 数据库add index 索引名称(数据库字段名称)
PRIMARY KEY(主键索引)
ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` )
UNIQUE(唯一索引)
ALTER TABLE `table_name` ADD UNIQUE (`column`)

INDEX(普通索引)
mysql>ALTER TABLE `table_name` ADD INDEX index_name ( `column` )

FULLTEXT(全文索引)
ALTER TABLE `table_name` ADD FULLTEXT ( `column` )

三,多列索引
 

复制代码 代码示例:
ALTER TABLE `table_name` ADD INDEX index_name ( `column1`, `column2`, `column3` )
 

1,普通索引。
这是最基本的索引,它没有任何限制。它有以下几种创建方式:
(1)创建索引:CREATE INDEX indexName ON tableName(tableColumns(length));如果是CHAR,VARCHAR类型,length可以小于字段实际长度;如果是 BLOB 和 TEXT 类型,必须指定length,下同。
(2)修改表结构:ALTER tableName ADD INDEX [indexName] ON (tableColumns(length))
(3)创建表的时候直接指定:CREATE TABLE tableName ( [...], INDEX [indexName] (tableColumns(length)) ;

2,唯一索引。
它与前面的"普通索引"类似,不同的就是:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。它有以下几种创建方式:
(1)创建索引:CREATE UNIQUE INDEX indexName ON tableName(tableColumns(length))
(2)修改表结构:ALTER tableName ADD UNIQUE [indexName] ON (tableColumns(length))
(3)创建表的时候直接指定:CREATE TABLE tableName ( [...], UNIQUE [indexName] (tableColumns(length));

3,主键索引
它是一种特殊的唯一索引,不允许有空值。一般是在建表的时候同时创建主键索引:CREATE TABLE testIndex(i_testID INT NOT NULL AUTO_INCREMENT,vc_Name VARCHAR(16) NOT NULL,PRIMARY KEY(i_testID)); 当然也可以用ALTER命令。

mysql索引管理 mysql创建索引
mysql索引的建立原则
mysql索引类型有哪些
mysql索引创建与管理笔记
mysql索引创建、删除与查看
mysql索引的建立规则
如何创建mysql索引
mysql索引的类型与优缺点
mysql索引优化注意问题
mysql索引优化提升数据库性能
mysql索引优化应用实例
Mysql索引分类与优化
深入理解MySQL索引与优化
mysql索引优化实例分享

您可能感兴趣的文章:
mysql索引管理 mysql创建索引
mysql索引管理实例(主键索引与唯一索引)
mysql索引的建立原则
mysql查看索引方法
了解 MySQL 主键与索引的联系与区别
mysql索引类型有哪些
mysql索引创建与管理笔记
MySQL 索引创建sql语句实例
mysql索引类型区别分析
mysql索引创建与删除命令

关键词: mysql索引   
[关闭]
~ ~