Terminology
沒有任何支撐結構的表(堆)的通用術語
也許這是題外話,如果是這樣,請 VTC,但我想不出更好的地方問。
沒有任何其他結構(索引、統計資訊等)的表是否有一個通用術語——類似於“裸”表?我使用術語堆,但理解它只是應用於非聚集表,而不是應用於沒有其他支持的表 - 堆仍然可以具有與之關聯的其他索引。
我已經將一些表複製到一個新的數據庫中,但沒有引入分區方案、索引、觸發器或其他任何東西——這讓我想知道是否有一個術語僅用於數據本身(以及保存它所需的最小模式)。
我們在 SQL Server 中將這些稱為堆。我知道非聚集索引會使事情複雜化,但這就是它們的名字。
對於它的價值,在許多 RDBMS 平台上,啟用了自動統計資訊,表上沒有統計資訊的可能性很小。
我很樂意將這些資料結構稱為未索引堆。
來自引用 Edgar Codd 作品的這篇Wiki 文章(在術語下):
這個定義沒有說明索引、觸發器、統計等。
Sql Server 和其他供應商已決定在此定義上“擴展”,其中沒有聚集索引的“表”稱為堆,但定義“開始”是“表”。
一位 Stack Exchange 使用者 (Phil) 進行了大量研究(他參與了這個關於行和記錄之間差異的問題執行緒)並引用了文件“資訊技術 — 數據庫語言 — SQL 第 2 部分:基礎 (SQL/Foundation) )”,它定義了所有主要 RDBMS 實現的 SQL 的 ANSI 標準。該文件指出:
表是零個或多個行的集合,其中每一行是一個或多個列值的序列。
同樣,沒有提及“支持”結構,例如索引(是否聚集)、統計資訊等。它甚至指出了一個事實,即不需要涉及任何數據(零行或多行)。