創建索引的方法有兩種

創建索引的方法有兩種:創建表的同時創建索引,在已有表上創建索引。

方法一:創建表的同時創建索引。

使用這種方法創建索引時,可以一次性地創建一個表的多個索引(例如唯一性索引、普通索引、複合索引等),其語法格式與創建的語法格式基本相同(注意粗體字部分的代碼)。

Create  table 表名(

字段名1數據類型 [約束條件]

字段名字2   數據類型 [約束條件]

[unique][fulltext] index [索引名](字段名[(長度)] [asc|desc]

)engine=存儲引擎類型 default charset=字符集類型

備註“[]”表示可選項,“[]”裏面的“|”表示將各個選項隔開,“()”表示必選項。

長度表示索引中關鍵字的字符長度,關鍵字的值可以是數據庫表中字段值得一部分,這種索引稱爲“前綴索引”。

      Asedesc爲可選項參數,分別表示升序與降序,不過目前這兩個可選項參數沒有實際作用,索引中所有關鍵字的值均以升序存儲。

 

使用下面的SQL語句創建了一個存儲引擎爲MyISAM、默認字符集爲gbk的書籍book表,其中定義了主鍵isbn、書名name、簡介brief_intorduction、價格price以及出版時間publish_time,並在該表分別定義了唯一性索引isbn_unique、普通索引name_idex、全文索引brief_fulltext以及複合索引complex_index

create table book

isbn char 20 primary key

name char100 not null

brifef_introduction text not noll,

price decimal(6,2),

publish_time date not null,

unique index isbn_unique (isbn),

index name_index (name (20)),

fulltext index brief_fulltext (name,brief_introduction),

index complex_index (price,publish_time),

) engine=MyISAM default charset=gbk;

 

方法二:在已有的表上創建索引

  在已有的表上創建索引有兩種語句格式,這種語句語法格式的共同特徵是需要指導在哪個表上創建索引,語法格式分別如下:

  語法格式一:

   create[unique|fulltext]index 索引名 on 表名(字段名[(長度)] [ase|desc]

   語法格式二:

   alter table 表名 add[unique|fulltext]index 索引名(字段名[(長度)] [ase|desc]

  例如,向課程course 表的課程描述description字段添加全文索引,可以使用下面SQL語句:

  alter  table  coursr add fulltexr index description_fulltext (description);

該語句等效於:

  Create fulltext index description on course (description);

刪除表索引

  SQL語句是:

   drop index 索引名 on 表名

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章