索引 第1关:用create index创建索引

任务描述

本关任务:
使用CREATE INDEX语句 :
1.在product商品表中,为name商品名的前2个字符创建一个升序索引product_name.
2.查看创建product表的信息。
3.在lineitem订单详情表中orderid订单号和itemid商品号上创建复合索引item_product。
4.查看创建lineitemt表的信息  (这里应该改成lineitem)

相关知识

为了完成本关任务,你需要掌握:CREATE INDEX语句

语法

1.使用CREATE INDEX语句可以在一个已有表上创建索引,一个表可以创建多个索引。
语法格式:
CREATE [UNIQUE | FULLTEXT] INDEX 索引名
ON 表名(列名[(length)] [ASC | DESC],...)
说明:
●索引名:索引的名称,索引名在一个表中名称必须是唯一的。
● 列名:表示创建索引的列名。
length表示使用列的前length个字符创建索引。使用列的一部分创建索引可以使索引文件大大减小,从而节省磁盘空间。BLOB或TEXT列必须用前缀索引。
● UNIQUE:UNIQUE表示创建的是唯一性索引
● FULLTEXT:FULLTEXT表示创建全文索引;
● CREATE INDEX 语句并不能创建主键。

2.使用:”show create table 表名;”查看创建表的信息。
####编程要求

测试如下:

USE petstore;

######### Begin #########
create index product_name on product(name(2)asc);
show create table product;
#drop table lineitem;
#set names gb2312;
/*create table lineitem(
    orderid char(40) not null,
    itemid char(20) not null,
    quantity char(10) not null,
    key item_product(orderid,itemid),
    primary key(orderid,itemid)
);
alter database petstore charset set=gb2312;*/

create index item_product
on lineitem(orderid,itemid);
show create table lineitem;
######### End #########

就挺无语的一开始以为他这个表不存在,最后才知道原来tmd多打了一个t

你可能感兴趣的:(mysql,数据库,database)