Aracılığıyla paylaş


Windows derleme adı (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiAzure Synapse AnalyticsAnaliz Platformu Sistemi (PDW)Microsoft Fabric'teki SQL analiz uç noktasıMicrosoft Fabric'teki ambarMicrosoft Fabric'teki SQL veritabanı

SQL Server'daki COLLATE cümlede Windows derleme adını belirtir. Windows derleme adı, derleme göstergesi ve karşılaştırma stillerinden oluşur.

Transact-SQL söz dizimi kuralları

Sözdizimi

<Windows_collation_name> ::=
<CollationDesignator>_<ComparisonStyle>

<ComparisonStyle> ::=
{ <CaseSensitivity>_<AccentSensitivity> [ _<KanatypeSensitive> ] [ _<WidthSensitive> ] [ _<VariationSelectorSensitive> ]
}
| { _UTF8 }
| { _BIN | _BIN2 }

Arguments

CollationDesignator

Windows derlemesinde kullanılan temel düzenleme kurallarını belirtir. Temel toplama kuralları şunları kapsar:

  • Sözlük sıralaması belirtildiğinde uygulanan sıralama ve karşılaştırma kuralları. Sıralama kuralları alfabe veya dile dayanır.
  • Varchar verilerini depolamak için kullanılan kod sayfası.

Aşağıda bazı örnekler bulunmaktadır:

  • Latin1_General veya French: her ikisi de kod sayfası 1252kullanır.
  • Turkish: kod sayfası 1254kullanır .

Küçük Durum Duyarlılığı

CI Küçük harf duyarsızlığını belirtir, CS küçük harf duyarlı olduğunu belirtir.

AccentSensitivity

AI vurguya duyarsız, AS vurguya duyarlı olduğunu belirtir.

KanatypeSensitive

Bu seçeneğin çıkarılması kanatype-insensitive, KS kanatype-sensitive belirtir.

Genişlik Duyarlılığı

Bu seçeneğin çıkarılması genişlik duyarsızlığını, WS genişlik duyarlılığını belirtir.

VaryasyonSeçici Duyarlılığı

Şunlar için geçerlidir: SQL Server 2017 (14.x) ve sonraki sürümler

Bu seçeneğin çıkarılması, varyasyon seçici-duyarsız, VSS varyasyon seçici-duyarlı olduğunu belirtir.

UTF8

Geçerlidir: SQL Server 2019 (15.x) ve sonraki sürümler

Uygun veri türleri için kullanılacak UTF-8 kodlamasını belirler. Daha fazla bilgi için bkz. Harmanlama ve Unicode desteği.

{ BIN | BIN2 }

  • BIN Kullanılacak geriye doğru uyumlu ikili sıralama sırasını belirler.
  • BIN2 kod noktası karşılaştırma semantiği kullanan ikili sıralama sırasını belirtir.

Açıklamalar

Düzenlemenin versiyonuna bağlı olarak, bazı kod noktalarında sıralama ağırlıkları veya büyük/küçük harfler tanımlanmış olmayabilir. Örneğin, fonksiyonun aynı karakter verildiğinde ancak aynı derlemenin farklı versiyonlarında çıktısını LOWER karşılaştırın:

SELECT NCHAR(504) COLLATE Latin1_General_CI_AS AS [Uppercase],
       NCHAR(505) COLLATE Latin1_General_CI_AS AS [Lowercase];

Sonuç kümesi aşağıdadır.

Sütun adı Result
Uppercase Ǹ
Lowercase ǹ

İlk ifade, eski derlemede bu karakterin hem büyük hem de küçük harflerini gösterir (derleme, Unicode verileriyle çalışırken karakterlerin kullanılabilirliğini etkilemez).

SELECT LOWER(NCHAR(504) COLLATE Latin1_General_CI_AS) AS [Version80Collation],
       LOWER(NCHAR(504) COLLATE Latin1_General_100_CI_AS) AS [Version100Collation];

Sonuç kümesi aşağıdadır.

Sütun adı Result
Version80Collation Ǹ
Version100Collation ǹ

İkinci ifade, bu kod noktasının o derlemede tanımlanmış küçük harf eşlemesi olmadığı için, derleme olduğunda Latin1_General_CI_ASbüyük harf karakter döndürüldüğünü gösterir.

Bazı dillerle çalışırken, eski derlemelerden kaçınmak kritik olabilir. Örneğin, bu Telugu için geçerlidir.

Bazı durumlarda, Windows derlemeleri ve SQL Server derlemeleri aynı sorgu için farklı sorgu planları oluşturabilir.

Örnekler

Aşağıdaki tablo, Windows derleme isimlerinin bazı örneklerini açıklar.

Collation Description
Latin1_General_100_CI_AS Collation, Latin1 Genel sözlük sıralama kurallarını kullanır ve kod sayfasına 1252eşlemeyi sağlar. Bu bir versiyon _100 derlemesidir ve hem küçük harf duyarsızdır (CI) hem de aksan duyarlıdır (AS).
Estonian_CS_AS Collation, Estonca sözlük sıralama kurallarını kullanır ve haritalar sayfa kod 1257sayfasına ait. Bu bir versiyon _80 derlemesidir (isminde sürüm numarası olmadığı için ima edilir), hem küçük harf duyarlıdır (CS) hem de aksan duyarlıdır (AS).
Japanese_Bushu_Kakusu_140_BIN2 Koleksiyon, ikili kod nokta sıralama kurallarını kullanır ve kod sayfasına 932eşlemektedir. Bu bir versiyon _140 derlemesi ve Japonca Bushu Kakusu sözlük sıralama kuralları göz ardı ediliyor.

Windows harmanlamaları

SQL Server örneğinizin desteklediği Windows derlemelerini listelemek için aşağıdaki sorguyu çalıştırın.

SELECT *
FROM sys.fn_helpcollations()
WHERE [name] NOT LIKE N'SQL%';