(Transact-SQL) HARMANLA

Bir veritabanı tanımı harmanlama tanımlamak için bir sütun tanımı veya bir karakter dize ifadesi harmanlama dönüştürme işlemi uygulamak için bu güvenlik açığından uygulanabilir bir yan tümce belirtilir.

Topic link iconTransact-SQL sözdizimi kuralları

COLLATE { <collation_name> | database_default }
<collation_name> :: = 
     { Windows_collation_name } | { SQL_collation_name }

Bağımsız değişkenler

  • collation_name
    Is the name of the collation to be applied to the expression, column definition, or database definition.collation_name can be only a specified Windows_collation_name or a SQL_collation_name.collation_name must be a literal value.collation_name cannot be represented by a variable or expression.

    Windows_collation_name harmanlama adı bir Windows harmanlaması adı.

    SQL_collation_name harmanlama adı bir SQL Server harmanlama adı.

    Yalnızca Unicode Windows harmanlamaları ile COLLATE kullanılamaz bir harmanlama veritabanı tanım düzeyinde uygularken yan tümce.

  • database_default
    COLLATE neden yan tümce geçerli veritabanı harmanlama devralmak için.

Remarks

COLLATE yan tümcesini, çeşitli düzeylerde belirtilebilir.Bu yöntemler aşağıda açıklanmaktadır:

  1. Oluşturma veya bir veritabanı değiştiriliyor.

    DATABASE CREATE veya ALTER DATABASE deyimini COLLATE yan tümce, veritabanının varsayılan harmanlama olarak belirtmek için kullanabilirsiniz.Kullanarak bir veritabanı oluşturduğunuzda, ayrıca bir harmanlama belirtebilirsiniz SQL Server Management Studio. Bir harmanlama belirtmezseniz, veritabanının varsayılan harmanlama olarak atanan örnek, SQL Server.

    Not

    Windows yalnızca Unicode alfabe ile COLLATE yalnızca kullanılabilir yan tümce alfabe düzenlerinden için uygulanacak nchar, nvarchar, ve ntext sütun düzeyi ve ifade düzey verileri veri türleri; ile COLLATE kullanılamaz yan tümce bir veritabanı veya sunucu örnek, harmanlama değiştirme.

  2. Oluşturma veya değiştirme bir tablo sütun.

    Her bir karakter dizesini alfabe düzenlerinden belirttiğiniz sütun tablo, CREATE veya ALTER tablo deyim COLLATE yan tümce kullanarak.Bir tablo kullanarak oluşturduğunuz bir harmanlama da belirtebilirsiniz SQL Server Management Studio. Bir harmanlama belirtmezseniz, sütun veritabanının varsayılan harmanlama olarak atanır.

    Ayrıca database_default geçici bir sütunda belirtmek istiyorsanız COLLATE yan tümcesinde seçeneği tablo yerine bağlantı için geçerli kullanıcı veritabanı harmanlama varsayılan kullanın. tempdb.

  3. ifade harmanlama çevrim.

    COLLATE kullanabileceğiniz yan tümce karakter bir ifade için belirli bir harmanlama uygulanacak.Geçerli veritabanının varsayılan harmanlama, karakter hazır ve değişkenler atanır.Sütun başvuruları, sütunun tanımı harmanlama atanır.ifade harmanlama için bkz: Harmanlama önceliği (Transact-SQL).

Tanımlayıcı, harmanlama tanımlandığı düzeyine bağlıdır.Örnek düzey nesneleri, oturumların ve veritabanı adları gibi tanımlayıcıları örneğinin varsayılan harmanlama olarak atanır.Veritabanındaki tablolar, görünümler ve sütun adları, nesne tanımlayıcıları, veritabanının varsayılan harmanlama olarak atanır.Örneğin, iki tablo ile durumunda yalnızca büyük/küçük durum duyarlı harmanlamayı veritabanında oluşturulabilir farklı adlar, ancak büyük/küçük durum duyarlı olmayan harmanlama veritabanında oluşturulmayabilir.Daha fazla bilgi için bkz:Tanımlayıcılar.

Bağlantı bağlamında bir veritabanıyla ilişkili ve daha sonra başka bir veritabanına bağlama geçti, başvurulan değişkenleri GOTO etiket, geçici saklı yordamlar ve geçici tablolar oluşturulabilir.Değişkenler, GOTO etiket için tanımlayıcıları geçici saklı yordamları ve varsayılan olarak geçici tablolarıdır harmanlama sunucu örneği.

COLLATE yan tümcesini, yalnızca uygulanabilir char, varchar, text, nchar, nvarchar, ve ntext veri türleri.

COLLATE uses collate_name to refer to the name of either the SQL Server collation or the Windows collation to be applied to the expression, column definition, or database definition.collation_name can be only a specified Windows_collation_name or a SQL_collation_name and the parameter must contain a literal value.collation_name cannot be represented by a variable or expression.

Alfabe düzenlerinden genellikle bir harmanlama adı dışında Kurulumu'nda tanımlanır.Kur, bunun yerine Windows harmanlamaları kök harmanlama göstergesi (alfabe düzeni yerel ayar) belirtin ve sonra önemli veya durum veya aksanlar için büyük küçük durum duyarlı sıralama seçeneklerini belirtin.

Sistem işlev yürütmek fn_helpcollations Windows harmanlamaları ve SQL Server alfabe düzenlerinden geçerli harmanlama adlarının bir listesini almak için:

SELECT *
FROM fn_helpcollations()

SQL Server temel işletim sistemi tarafından desteklenen kod sayfalarını destekler.Alfabe düzenlerinden üzerinde bağımlı bir eylem gerçekleştirdiğinizde SQL Server başvurulan bir nesne tarafından kullanılan harmanlama kullanmalısınız bir kod sayfa bilgisayarda çalışan işletim sistemi tarafından desteklenen. Bu eylemler aşağıdakileri içerebilir:

  • Oluşturmak veya veritabanını değiştirmek için bir veritabanı için varsayılan harmanlama belirtme.

  • Oluşturduğunuzda veya tabloyu Değiştir sütun için bir harmanlama belirtme.

  • Bir veritabanını, veritabanının varsayılan harmanlama ve herhangi harmanlama ekleme ya da geri yükleniyor char, varchar, ve text sütun veya parametre veritabanındaki işletim sistemi tarafından desteklenmelidir.

    Kod sayfa çeviriler için destekleniyor char ve varchar veri türleri için değil text Veri Türü. Kod sayfa dönüşümleri sırasında veri kaybını bildirilir.

Windows tarafından desteklenen bir kod sayfasında belirtilen alfabe düzeni veya başvurulan bir nesne tarafından kullanılan harmanlama kullanıyorsa SQL Server bir hata görüntüler.