我只是想知道我們是否可以在沒有任何類型的索引的sql服務器上的表上創建一個主鍵?在表中沒有任何索引的主鍵?
回答
否。作爲實現的詳細信息,SQL Server使用索引維護主鍵。你無法阻止它這樣做。主鍵:
- 確保沒有重複的鍵值存在
- 允許各行被識別/訪問
SQL服務器已經有機制,提供這些功能 - 唯一索引 - 所以它使用那些強制約束。
我想補充說,默認情況下,sql server會創建聚簇索引。您可以重寫此行爲,服務器將創建非聚集索引。 – gstackoverflow
事實上索引函數的方式與書本遍歷的方式相同。除非頁面號及其與主題的關係,否則不能訪問特定頁面或主題。行的「分頁」(排序)由SQL Server中的「集羣索引」完成。如果表中沒有PK,可以在任何唯一鍵合格列上添加聚簇索引。由於表上不能有多個聚簇索引,並且所有其他非聚簇索引都依賴於聚簇索引進行搜索/遍歷,所以無法創建沒有聚簇索引的列PK。
PK!=聚集索引。您可以擁有包含多個非聚簇索引並且沒有聚簇索引(又名堆)的表。物理排序實際上是不相關的,並不完全由聚集索引決定。 –
通過在primary key
單詞後面添加關鍵字NONCLUSTERED
,可以創建一個不是聚集索引的主鍵的表。
而不是隻發佈這樣的問題的答案。只是提供一個例子,以便更好地理解。 – tarzanbappa
- 1. 在表的主鍵上有索引嗎?
- 2. 沒有主鍵的聚集索引
- 3. MYSQL沒有鍵/索引的加入表
- 4. 找到沒有集羣索引但帶有表上的主鍵的表
- 5. 表沒有主鍵
- 6. Django沒有分配任何主鍵
- 7. 任何表中都沒有找到索引 - 是否有可能?
- 8. SQL錯誤:「引用表中沒有主鍵或候選鍵......」
- 9. 有沒有我們沒有任何主鍵的情況?
- 10. 沒有主鍵的表格
- 11. 沒有主鍵的Rails表
- 12. 索引和主鍵
- 13. SQLAlchemy聲明式:沒有任何主鍵的表?
- 14. plsql過程比較沒有任何主鍵列的兩個表
- 15. 更新沒有任何鍵/索引信息的大型MySQL表格
- 16. 引用表中沒有與引用列相匹配的主鍵或候選鍵
- 17. 有在引用表上沒有主或候選鍵的引用列列表中的外鍵
- 18. 我們如何找到沒有任何索引的表格(PostgreSQL)
- 19. 錯誤有在引用表上沒有主或候選鍵
- 20. SQL錯誤 - 有沒有主或候選鍵在引用表
- 21. 有在引用表上沒有主或候選鍵
- 22. Sonar-Runner沒有索引任何文件
- 23. 主鍵vs主鍵索引速度
- 24. 在沒有主鍵的現有表上創建主鍵在SQL Server中
- 25. 被引用表'PayRoll'中沒有與外鍵'fk_EmployeeNumber'中的引用列表匹配的主鍵或候選鍵'
- 26. 沒有主鍵的事務複製(唯一索引)
- 27. 創建一個沒有聚集索引的mysql主鍵?
- 28. 搜索沒有主鍵的記錄
- 29. SQL Server中的複合表,主鍵,外鍵和索引
- 30. 表沒有主鍵c#
主鍵是一個索引。你的問題沒有感覺... – sp00m
我知道abt that.My問題是我想創建Pk,但沒有任何索引 – AnandPhadke
或者是迂腐PK是一個邏輯約束,總是由一個獨特的索引當前版本的SQL Server。 –