如何建立索引和維護(hù)SQL數(shù)據(jù)庫
  • 更新時間:2024-11-08 13:45:49
  • 網(wǎng)站建設(shè)
  • 發(fā)布時間:1年前
  • 325

索引是根據(jù)表中的一個或多個列按一定順序建立的列值與記錄行之間對應(yīng)關(guān)系的表。為了提高查詢性能,可以建立質(zhì)數(shù)索引。SQL數(shù)據(jù)庫如果建立索引和維護(hù)1.創(chuàng)建索引

在SQL語言中,CREATE INDEX語句用于創(chuàng)建索引,其一般格式如下:

CREATE [UNIQUE] [CLUSTER] INDEX 索引名

ON基本表名(列名[sequence],[,列名[sequence]].);

說明:

(1) UNIQUE 規(guī)定索引的每個索引值只對應(yīng)表中唯一的一條記錄。

(2) CLUSTER 指定該索引為聚簇索引。所謂聚簇索引就是索引項的順序與表中記錄的物理順序一致。聚簇索引對于經(jīng)常搜索一系列值的列特別有效。一旦使用聚集索引找到包含第一個值的行,就可以確保包含后續(xù)索引值的行在物理上相鄰。使用聚集索引可以大大提高查詢性能。省略CLUSTER 表示創(chuàng)建的索引是非聚集索引。非聚集索引類似于書中的索引。數(shù)據(jù)存儲在一個地方,索引存儲在另一個地方,索引是用網(wǎng)站做的指針指向數(shù)據(jù)的存儲位置。索引中的項目按索引鍵值的順序存儲,而表中的信息按另一種順序存儲(這可以由聚集索引指定)。

(3)Order : 建索引時指定列名的索引表是ASC(升序)或DESC(降序)。如果未指定,則默認(rèn)為升序。

(4) 該語句創(chuàng)建的索引的排列方式是:先按第一個列名值排序;具有相同列值的記錄按下一列名稱排序。

【例3.8】在Student表的屬性列Sno上創(chuàng)建非聚集索引。

創(chuàng)建索引IDX_DNO_SNO

ON Student(Sno ASC);

[例3.91 在Student 表的屬性列Sname 上創(chuàng)建聚簇索引。

CREATE CLUSTER INDEX IDX_SNAMEON Student(Sname ASC);2.刪除索引

雖然索引可以提高查詢效率,但過多或不合適的索引會導(dǎo)致系統(tǒng)效率低下。每次用戶向表添加索引時,數(shù)據(jù)庫都必須做更多的工作。索引過多甚至?xí)?dǎo)致索引碎片,降低系統(tǒng)效率。因此,應(yīng)及時刪除不需要的索引。刪除索引的格式如下:

DROP INDEX 索引名稱

解釋: 該語句會刪除定義的索引,數(shù)據(jù)字典中對該索引的描述也會被刪除。

【例3.10】刪除Student表的索引IDX_DNO_SNO。

DROP INDEX IDX DNO SNO;

我們專注高端建站,小程序開發(fā)、軟件系統(tǒng)定制開發(fā)、BUG修復(fù)、物聯(lián)網(wǎng)開發(fā)、各類API接口對接開發(fā)等。十余年開發(fā)經(jīng)驗,每一個項目承諾做到滿意為止,多一次對比,一定讓您多一份收獲!

本文章出于推來客官網(wǎng),轉(zhuǎn)載請表明原文地址:https://www.tlkjt.com/web/12574.html
推薦文章

在線客服

掃碼聯(lián)系客服

3985758

回到頂部