我想用SQL查詢找出索引是否爲UNIQUE。我使用SQLite 3如何找出SQLite索引是否唯一? (使用SQL)
我已經嘗試了兩種方法:
SELECT * FROM sqlite_master WHERE name = 'sqlite_autoindex_user_1'
這將返回有關指數( 「類型」 信息, 「名字」, 「tbl_name」, 「rootpage」 和 「SQL」 )。請注意,當SQLite自動創建索引時,sql列爲空。
PRAGMA index_info(sqlite_autoindex_user_1);
這將返回索引中的列(「seqno」,「cid」和「name」)。
任何其他建議?
編輯:上面的例子是針對自動生成的索引,但我的問題是關於一般的索引。例如,我可以使用「CREATE UNIQUE INDEX index1 ON visit(user,date)」創建一個索引。看起來沒有SQL命令會顯示,如果我的新索引是UNIQUE或不。
您可以舉例說明自動生成的索引不唯一嗎?我見過的人一直都是獨一無二的。 – finnw 2008-10-02 17:05:53
autoindex是爲主鍵生成的,它的定義是唯一的 – Noah 2009-01-19 22:52:24