在閱讀有關索引唯一性的文檔后,我一直試圖在Postgres中理清唯一性和索引之間的關系:向表添加唯一約束的首選方法是ALTER TABLE ... ADD CONSTRAINT。使用索引強制實施唯一約束可以被認為是不應直接訪問的實現細節。但是,應該知道,不需要在唯一列上手動創建索引;這樣做只會復制自動創建的索引。因此,采取的文檔在他們的話我打算只需要聲明的東西一樣獨特,并使用隱式索引 - 或 - 創建索引,而不是假定值是唯一的。這是一個錯誤嗎? 我將從獨特性獲得什么樣的索引?假設只有btree會接受唯一約束,并且unique隱式創建索引,那么UNIQUE是否創建btree索引是否成立?我不想無意間在哈希索引上運行范圍。
請問PostgreSQL如何執行UNIQUE約束/它使用什么類型的索引?
慕俠2389804
2020-01-07 10:28:36