數(shù)據(jù)庫優(yōu)化是個嚴肅復雜的問題,網站建設怎么進行數(shù)據(jù)庫優(yōu)化呢?
1. 對什么列建索引
除了這個索引之外還需要在哪些列上建索引呢?這個問題只能具體情況具體分析,數(shù)據(jù)庫默認情況下會對主鍵建聚集索引。要看需要優(yōu)化的sql語句(通常是查詢次數(shù)多,查詢相應想要高的語句)根據(jù)什么列的條件進行查詢。
2. 復合索引要注意列順序
A列的葉節(jié)點上才會開始根據(jù)B列建二叉樹。所以包括兩個列的索引就需要根據(jù)查詢條件所在列來決定兩個列在索引中的順序。索引在數(shù)據(jù)庫中是以二叉樹的形式存儲的包括A,B兩個列的索引會首先根據(jù)A列建二叉樹。
3. 索引的個數(shù)問題
除非你完全不在乎修改數(shù)據(jù)的效率。另外sqlserver自身會對索引的數(shù)量和索引的數(shù)據(jù)長度有限制,索引提高查詢效率是以降低更新、拔出、刪除的速度為代價的每當索引列發(fā)生變化時都需要對索引數(shù)據(jù)進行相應的調整。所以一個表上不可以建太多的索引。