如何创建索引

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何创建索引相关的知识,希望对你有一定的参考价值。

索引是建立在数据表上的,因此需要首先创建一张数据表,创建SQL 语句
如下:
mysql、MSSQLServer、DB2数据库:
CREATE TABLE T_Person (FNumber VARCHAR(20),
FName VARCHAR(20),FAge INT)
Oracle:
CREATE TABLE T_Person (FNumber VARCHAR2(20),
FName VARCHAR2(20),FAge NUMBER (10))
请在不同的数据库系统中运行相应的SQL 语句。T_Person为记录人员信息的数据表,
其中字段FNumber 为人员的编号,FName 为人员姓名,FAge为人员年龄。
索引是针对字段的,因此创建索引索引的时候需要指定要在那个字段上创建索引,还可
以为多个字段创建一个索引,这样还可以指定索引相关的字段列表。创建索引的SQL 语句
是CREATE INDEX,其语法如下:
CREATE INDEX 索引名ON 表名(字段1, 字段2,……字段n)
其中【索引名】为被创建的索引的名称,这个名称必须是唯一的;【表名】为要创建索
引的表;【字段1, 字段2,……字段n】为组成这个索引的字段列表,允许一到多个。
下面的SQL语句在T_Person表的FName字段上创建索引,索引名为idx_person_name:
CREATE INDEX idx_person_name ON T_Person(FName)
下面的SQL 语句在T_Person 表的FName 和FAge 字段上创建索引,索引名为
idx_person_nameage:
CREATE INDEX idx_person_nameage ON T_Person(FName,FAge)
索引创建后是可以被删除的,删除索引使用的语句为DROP INDEX。不同的数据库系
统的DROP INDEX 语法是不同的,下面分别介绍:
MYSQL中的DROP INDEX 语法如下:
DROP INDEX 索引名ON 表名
比如下面的SQL语句用来删除刚才我们创建了两个索引:
DROP INDEX idx_person_name ON T_Person;
DROP INDEX idx_person_nameage ON T_Person;
MSSQLServer 中的DROP INDEX 语法如下:
DROP INDEX 表名.索引名
比如下面的SQL语句用来删除刚才我们创建了两个索引:
DROP INDEX T_Person.idx_person_name;
DROP INDEX T_Person.idx_person_nameage;
Oracle和DB2中的DROP INDEX 语句不要求指定表名,只要指定索引名即可,语法如
下:
DROP INDEX 索引名
比如下面的SQL语句用来删除刚才我们创建了两个索引:
DROP INDEX idx_person_name;
DROP INDEX idx_person_nameage;
到这里,索引相关的知识点就介绍完毕了,请执行下面的SQL 语句删除刚才创建的
T_Person表:
DROP TABLE T_Person;

以上是关于如何创建索引的主要内容,如果未能解决你的问题,请参考以下文章

如何创建mysql索引以及索引的优缺点

Oracle创建索引SQL简单的例子,在表中的指定字段和如何使用索引呢?

如何解决Oracle“不能创建唯一索引,发现重复记录”问题

Oracle新手入门:如何提高索引创建速度?

如何创建唯一索引

mysql数据库怎么创建索引