PostgreSQL 唯一索引

2021-08-27 11:49 更新

索引也可以被用來(lái)強(qiáng)制列值的唯一性,或者是多個(gè)列組合值的唯一性。

CREATE UNIQUE INDEX name ON table (column [, ...]);

當(dāng)前,只有B-tree能夠被聲明為唯一。

當(dāng)一個(gè)索引被聲明為唯一時(shí),索引中不允許多個(gè)表行具有相同的索引值??罩当灰暈椴幌嗤R粋€(gè)多列唯一索引將會(huì)拒絕在所有索引列上具有相同組合值的表行。

PostgreSQL會(huì)自動(dòng)為定義了一個(gè)唯一約束或主鍵的表創(chuàng)建一個(gè)唯一索引。該索引包含組成主鍵或唯一約束的所有列(可能是一個(gè)多列索引),它也是用于強(qiáng)制這些約束的機(jī)制。

注意

不需要手工在唯一列上創(chuàng)建索引,如果那樣做也只是重復(fù)了自動(dòng)創(chuàng)建的索引而已。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)