到目前為止我們只談查詢效能,但 SQL 不只有查詢,它同樣支援資料操作。對應的指令——insertdeleteupdate——構成 SQL 標準中所謂的資料操作語言(DML, data manipulation language)

這些指令的效能,大部分都受索引的負面影響

原因回到第 1 章的定義:索引是純粹的冗餘,它只包含資料表裡也有的資料。寫入時,資料庫必須維持這些冗餘的一致性——也就是說,insertdeleteupdate 不只影響資料表,還影響每一個持有該資料副本的索引