使用 BIN 和 BIN2 定序的指導方針

下列考量有助於您決定是 BIN 或 BIN2 二進位定序適合您的 SQL Server 實作。

二進位定序是依據地區設定和資料類型所定義的編碼值順序來排序資料。SQL Server 中的二進位定序會定義要使用的地區設定和 ANSI 字碼頁,並強制使用二進位排序次序。由於其相對簡化性,二進位定序在改善應用程式效能方面很有幫助。如果是非 Unicode 資料類型,資料比較是依據 ANSI 字碼頁中所定義的字碼指標。如果是 Unicode 資料類型,資料比較則是依據 Unicode 字碼指標。如果是 Unicode 資料類型的二進位定序,在資料排序時不會考量地區設定。例如,Latin_1_General_BIN 和 Japanese_BIN 用於 Unicode 資料時會產生相同的排序結果。

SQL Server 的舊二進位定序 (以 "_BIN" 結尾),對 Unicode 資料之字碼元素對字碼元素的比較不完整。舊的 SQL Server 二進位定序以 WCHAR 比較第一個字元,然後使用逐一比較位元組的方式。為了與舊版相容,現有的二進位定序語意不變。

使用 BIN 定序的指導方針

如果 SQL Server 應用程式與使用二進位定序的舊版 SQL Server 互動,請繼續使用二進位。二進位定序可能更適合混合環境。

使用 BIN2 定序的方針

在這一版的 SQL Server 中,二進位定序包括一組純字碼元素比較定序。您可以移轉到二進位定序,以便利用真正的字碼元素比較,而且應該使用新的二進位定序來開發新的應用程式。BIN2 後置詞會識別實作新字碼元素定序語意的定序名稱。此外,還有對應至二進位排序之 BIN2 的比較旗標。其優點包括更簡單的應用程式開發和更清楚的語意。