選擇適當的數據類型

已完成

SQL Server 提供各種不同的數據類型,而您的選擇可能會大幅影響效能。 雖然 SQL Server 可以自動轉換某些數據類型(稱為「隱含轉換」),但此程式的成本可能很高,而且對查詢計劃造成負面影響。 替代方式是明確轉換,您可以在其中使用 CAST 程式代碼中的 或 CONVERT 函式來強制數據類型轉換。

此外,選擇大於必要數據類型可能會導致浪費的空間,而且需要讀取更多頁面。 請務必為您的數據選取適當的數據類型,因為這可減少資料庫所需的總記憶體,並改善查詢效能。

備註

在某些情況下,完全無法轉換。 例如,日期無法轉換成位。 轉換可能會對查詢效能造成負面影響,方法是造成搜尋可能的地方進行索引掃描,以及轉換本身的額外 CPU 額外負荷。

下圖指出 SQL Server 可以執行隱含轉換的情況,以及您必須在程式代碼中明確轉換數據類型的情況。

SQL Server 和 Azure SQL 中的類型轉換圖表

SQL Server 提供各種系統提供的數據類型,可用於數據表和查詢。 此外,SQL Server 允許使用 T-SQL 或 .NET Framework 建立使用者定義的數據類型。