我有一個獨特的索引在我的postgresql 9.0分貝,基於一個函數。我還沒有使任何手動測試失敗,但我在查詢時發現數據庫中有一些重複項。爲什麼我對唯一索引有非唯一條目? (PostgreSQL 9.0)
檢查了這一點:
Index: "users_screen_name_idx" UNIQUE, btree (lower(screen_name::text))
# select lower(screen_name), count(1) from users group by lower(screen_name) having count(1) > 1;
lower | count
---------------+-------
xxx xxx 3735 | 2
xxx xxx 37383 | 2
... (36 more) ...
| 17254
(39 rows)
任何想法如何,這是怎麼回事?我知道NULL不是唯一的,這不是問題,它是其他38行。
這是一些可怕的sh * t。我真的希望9.3通過校驗和得到一些內置的驗證,並且在系統開始返回不正確的結果之前哪些內容不會捕獲這些驗證。我還想知道,如果數據是在ZFS文件系統上,如果這種類型的東西會被捕獲和/或阻止。 – Kuberchaun 2012-09-28 14:02:22