mysql操作索引的sql语句
2014-02-20 12:08
507 查看
[b]创建索引[/b]
一:唯一索引 alter table table_name add unique index_name(column_list); 例如:alter table users_game_task add unique unique_userid_taskid(userid, taskid); 二:主键索引:PRIMARY KEY(主键索引) ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) alter table table_name add index index_name (column_list) ; alter table table_name add unique index index_name(column_list) ; alter table table_name add primary key (column_list) ;
[b]查询索引[/b]
SHOW INDEX FROM table_name;
[b]删除索引[/b]
方法一:drop index index_name on table_name ; 方法二:alter table table_name drop index index_name ; alter table table_name drop primary key ;
其中,在前面的两条语句中,都删除了table_name中的索引index_name。而在最后一条语句中,只在删除PRIMARY KEY索引中使用,因为一个表只可能有一个PRIMARY KEY索引,因此不需要指定索引名。
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命令。
相关文章推荐
- Shell脚本中执行sql语句操作mysql
- Sql mysql操作语句-初级
- Mysql性能优化----SQL语句优化、索引优化、数据库结构优化、系统配置优化、服务器硬件优化
- SQL语句处理一些修改、新增、删除、修改属性操作(MySql)
- Mysql 将结果保存到文件 从文件里运行sql语句 记录操作过程(tee 命令的使用)
- mysql 事务处理,事务操作,JDBC中事务的使用,事务的sql语句,
- MYSQL:SQL语句操作数据库中表和字段的COMMENT值
- mysql之sql语句-数据库、表内容相关的基础操作
- thinkphp操作mysql之SQl语句报错及解决方案
- MySQL的基本操作及SQL语句的基本命令
- thinkphp操作mysql之打印sql语句
- mysql系列:ddl数据库定义+sql操作语句
- 【shell sql】shell脚本嵌入mysql语句以进行遍历表的操作
- MySQL 查看表结构、索引、触发器 的SQL语句
- MySQL InnoDB 默认行级锁,行级锁都是基于索引,SQL 语句用不到索引是不会使用行级锁的,而会使用表级锁把整张表锁住
- mysql 创建索引,删除索引的sql语句 【转】
- [MySQL]--索引操作常见的SQL
- MySQL存储过程详解 mysql 存储过程mysql存储过程详解 1. 存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored
- 使用MySQL for Navicat 创建用户(连接) 及 SQL语句操作
- 关于Python操作Mysql数据库时SQL语句的格式问题(mysql语句中的双引号问题)