一、MySQL中的其他对象
1.索引
MySQL 索引的建立对于 MySQL 的高效运行是很重要的,索引可以大大提高 MySQL
的检索速度。
1.1MySQL中的索引类型
• 普通索引
• 唯一索引
• 主键索引
• 组合索引
• 全文索引
1.2普通索引
是最基本的索引,它没有任何限制。在创建索引时,可以指定索引长度。length 为可选参数,表示索引的长度(索引长度表示数组的元素个数),只有字符串类型的字段才能指定索引长度,如果是 BLOB 和 TEXT 类型,必须指定 length。
创建索引时需要注意:
如果指定单列索引长度,length 必须小于这个字段所允许的最大字符个数。
查询索引:SHOW INDEX FROM table_name
1.2.1直接创建索引
CREATE INDEX index_name ON table(column(length))
示例
为 emp3 表中的 name 创建一个索引,索引名为 emp3_name_index
create index emp3_name_index ON emp3(name)
1.2.2修改表添加索引
ALTER TABLE table_name ADD INDEX index_name (column(length))
示例
修改 emp3 表,为 addrees 列添加索引,索引名为 emp3_address_index
alter table emp3 add index emp3_address_index(address)
1.2.3创建表时指定索引列
CREATE TABLE `table` (COLUMN TYPE ,PRIMARY KEY (`id`),INDEX index_name (column(length)))
示例
创建 emp4 表,包含 emp_id,name,address 列,同时为 name 列创建索引。索引名为 emp4_name_index
create table emp4(emp_idint primary key auto_increment,name varchar(30),address varchar(50),index emp4_name_index(name))
1.2.4删除索引
DROP INDEX index_name ON table
示例
删除 mep3 表中索引名为 emp3_address_index 的索引
drop index emp3_address_index on emp3
1.3唯一索引
唯一索引与普通索引类似,不同的就是:索引列的值必须唯一,但允许有空值。它有以下几种创建方式:
1.3.1创建唯一索引
CREATE UNIQUE INDEX indexName ON table(column(length))
示例
为 emp 表中的 name 创建一个唯一索引,索引名为 emp_name_index
create unique index emp_name_index on emp(name)
1.3.2修改表添加唯一索引
ALTER TABLE table_name AD