harmanlama ve uluslararası terimleri
AlfabeSQL Serversıralama kuralları, durum ve vurgu duyarlılığı özelliklerini veri.Char ve varchar dikte gibi karakter veri türleriyle kullanılan alfabe kod sayfa ve bu veri türünü temsil karşılık gelen karakter.Mı yüklediğiniz yeni örnekSQL Server, bir veritabanı yedeklemesini veya sunucu istemci veritabanlarına bağlanma, yerel ayar ayar gereksinimler, sıralama düzeni ve büyük/küçük durum ve Aksan duyarlılığı çalışmayı ile veri anlamak önemlidir.
Sunucu, veritabanı, sütun veya ifade için bir harmanlama seçeneğini belirlediğinizde, veritabanınızdaki birçok işlemlerinin sonuçlarını etkileyecek verilerinizi belirli özelliklerini atadığınız.Örneğin, ne zaman, yapılandırma sorgu ORDER BY, sonuç sıralama düzeni düzenini kullanarak küme veritabanına uygulanan veya sorgu ifadesi düzeyinde COLLATE yan tümcesinde dikte harmanlama bağlı olabilir.
Bir harmanlama özellikleri bazılarını veya tümünü içerebilir:
Büyük/küçük harf duyarlılığı
Aksan duyarlılığı
Kana duyarlılığı
Genişlik duyarlılığı
En iyi kullanım harmanlama desteği içinSQL ServerBu konuda ve nasıl, ilgili verilerin. özellikleri tanımlanan terimleri anlamanız gerekir,
Koşulları
Harmanlama
Yerel Ayar
Unicode
Kod sayfa
Veri türleri
Sıralama düzeni
Harmanlama
Bir harmanlama veri her karakteri temsil eden bit deseni belirtir küme.Collations also determine the rules that sort and compare data.SQL Server supports storing objects with different collations in a single database.Unicode olmayan sütunlar için harmanlama ayarı veri ve hangi karakteri temsil için kod sayfasını belirtir.Unicode olmayan sütunlar arasında taşınan veri kaynak kod sayfasından hedef kod sayfa dönüştürülmesi gerekir.
Transact-SQL Deyim, farklı harmanlama ayarlarına sahip farklı veritabanları bağlamında çalıştırıldığında ifade sonuçlar değişebilir.Mümkünse, kuruluşunuz için standart harmanlama kullanın.Bu şekilde, her karakter veya Unicode ifade harmanlama açıkça belirtmeniz gerekmez.Farklı harmanlama ve kod sayfa ayarlarına sahip nesneler ile çalışmanız gerekir, sorgularınızı harmanlama öncelik kuralları göz önünde bulundurulması gereken kodu.Daha fazla bilgi için bkz:Harmanlama önceliği (Transact-SQL).
Dil duyarlığı, büyük/küçük durum duyarlılığı, vurgu duyarlılığı, Kana duyarlı ve genişliği duyarlılığı bir harmanlama özellikleri var.
SQL Server alfabe aşağıdaki harmanlama kümesi içerir:
Windows harmanlamaları
Windows harmanlamaları ilişkili bir Windows sistem yerel ayar ayar ayarını temel karakter veri saklamak için kuralları tanımlayın.Bir Windows harmanlaması için Unicode veri olarak aynı algoritmayı kullanarak Unicode olmayan veri karşılaştırması gerçekleştirilir.Temel Windows hangi alfabetik veya dil sözlüğü sıralama uygulandığında kullanılan harmanlama kurallarını belirtmeniz ve Unicode olmayan karakter verisini depolamak için kullanılan kod sayfa.Unicode ve Unicode olmayan sıralama dize karşılaştırmaları, belirli bir Windows sürüm ile uyumlu değildir.Bu veri türleri içinde arasında tutarlılık sağlarSQL Server, geliştiriciler kendi uygulamalarında dizeleri tarafından kullanılan aynı kuralları kullanarak sıralama sağlar...SQL Server.Daha fazla bilgi için bkz:Kur, alfabe düzeni ayarları.İkili alfabe
İkili alfabe yerel ayar ayar ayarlar ve veri türüne göre tanımlanır kodlanmış değerlerin serisini temel alarak verileri sıralama.Bunlar büyük/küçük durum duyarlıdır.İkili bir harmanlamaSQL Serveryerel ayar ayar ve kullanılan ANSI kod sayfa.Bu ikili sıralama düzeni uygular.Görece basit oldukları için ikili alfabe uygulama performansını artırmaya yardımcı olur.Unicode olmayan veri türleri için veri karşılaştırmaları ANSI kod sayfa ' tanımlanan kod noktaları dayanır.Unicode veri türleri için Unicode kod noktaları veri karşılaştırmaları temel alır.Unicode veri türlerini İkili alfabe düzenleri için yerel ayar ayar veri sıralar sayılır.Unicode verileri kullanıldığında, Latin_1_General_BIN ve Japanese_BIN aynı sıralama sonuçlar verim edin.Önceki sürümlerindeki İkili alfabeSQL Serverkarşılaştırma ilk karakteri olarak WCHAR, arkasından bir bayt bayt karşılaştırma.Geriye dönük uyumluluk nedeniyle, ikili harmanlama semantik varolan değişmez için.
İkili alfabe bu sürümündekiSQL Serverdahil bir dizi saf kod noktası karşılaştırma alfabe.Gerçek kod noktası karşılaştırma yararlanmak için ikili alfabe geçirebilirsiniz.İkili alfabe, yeni uygulamalar geliştirmek için kullanın.BIN2 son eki, yeni kod noktası karşılaştırma semantik harmanlama adlarını tanımlar.BIN2 için yeni ikili sıralama için karşılık gelen bir karşılaştırma bayrağı vardır.Daha fazla bilgi için bkz:BIN ve BIN2 harmanlamalar kullanma yönergeleri.
SQL Server
SQL Serveralfabe (SQL_ *) sağlayan sıralama düzeni sipariş önceki sürümleriyle uyumlulukSQL Server.Unicode olmayan veri sözlüğü sıralama kuralları Windows işletim sistemleri tarafından sağlanan herhangi bir sıralama yordamı ile uyumlu değildir.Ancak, Unicode verileri sıralama kuralları sıralama Windows'un belirli bir sürümüyle uyumlu değildir.ÇünküSQL Serveralfabe düzenlerini kullanan Unicode olmayan ve Unicode verileri için farklı karşılaştırma kuralları, bağlı olarak aynı verilerin karşılaştırmaları için farklı sonuçlar göreceksiniz temel veri türü.Daha fazla bilgi için bkz:SQL Server harmanlamalar kullanma.Not
Yükseltme, bir İngilizce dil örnek,SQL Server,SQL Serveralfabe (SQL_ *), varolan örnek s uyumlu belirtilebilirSQL Server.Çünkü örnek için varsayılan harmanlamaSQL Servertanımlanan kurulum sırasında aşağıdaki doğruysa dikkatle harmanlama ayarlarını belirtmek önemlidir:
Uygulama kodunuzda önceki davranışına bağlıdırSQL Serveralfabe.
Gitme kullanmaSQL Servervarolan yüklemelerini çoğaltmaSQL Server6.5 veyaSQL Server7.0.
Birden çok dil gösteren karakter verisi saklamanız gerekir.
Ayarı alfabe aşağıdaki düzeylerde desteklenen bir örnek,SQL Server:
Sunucu-düzey alfabe
Varsayılan harmanlama sırasında kümeSQL ServerKur, ve aynı zamanda olur varsayılan harmanlama sistem veritabanları.Not seçtiğiniz yalnızca Unicode alfabe edemiyor sırasındaSQL Server, sunucu - desteklenmez çünkü Kur düzey alfabe.Bir sütun veya veritabanı dışındaki herhangi bir nesne için bir harmanlama atanan sonra harmanlamayı dışında bırakarak ve nesneyi yeniden değiştiremezsiniz.Varsayılan harmanlama olarak değiştirmek yerine bir örnek,SQL Serveroluşturduğunuz yeni bir veritabanı veya saat harmanlama belirtebilirsiniz veritabanı sütun.
örnek için sunucu harmanlama düzeni sorgulamak içinSQL Serveraşağıdakini kullanınTransact-SQLSERVERPROPERTY işlev:
SELECT CONVERT (varchar, SERVERPROPERTY('collation'))
Tüm kullanılabilir harmanlamaları sunucuyu sorgulamak için aşağıdaki kullanın**fn_helpcollations()**yerleşik işlev:
SELECT * from ::fn_helpcollations()
Veritabanı-düzey alfabe
Bir veritabanı oluşturduğunuzda, CREATE DATABASE COLLATE yan tümce kullanabilirsiniz deyim varsayılan veritabanı harmanlama belirtmek için.Hiçbir alfabe düzeni belirtilmiş olması durumunda veritabanı model veritabanının varsayılan harmanlama olarak atanır.Model veritabanı harmanlama aynıdır örneğinin varsayılan harmanlamaSQL Server.Kullanıcı Veritabanı Harmanlama, aşağıdakine benzer bir ALTER DATABASE deyimini kullanarak değiştirilebilir:
ALTER DATABASE myDB COLLATE Greek_CS_AI
Aşağıdakine benzer bir deyim kullanarak veritabanının geçerli harmanlama alınabilir:
SELECT CONVERT (varchar, DATABASEPROPERTYEX('database_name','collation'))
Not
Veritabanı düzeyinde harmanlama değiştirme ifade düzey ya da sütun düzeyinde alfabe düzenlerini etkilemez.
Sütun-düzey alfabe
Bir tablo oluşturduğunuzda, her bir karakter dizesini alfabe belirtebileceğiniz sütun CREATE TABLE deyim COLLATE yan tümce kullanarak.Hiçbir alfabe düzeni belirtilmiş olması durumunda, sütuna veritabanının varsayılan harmanlama atanır.sütun harmanlama, aşağıdakine benzer bir ALTER tablo deyim kullanılarak değiştirilebilir:
ALTER TABLE myTable ALTER COLUMN mycol NVARCHAR(10) COLLATE Greek_CS_AI
ifade-düzey alfabe
İfade-düzey alfabe küme bir ifade çalıştırın ve bir sonuç kümesi döndürülür şekilde etkilerler.Bu bölgeye özgü olarak ORDER BY sıralama sonuçlar sağlar.İfade düzeyinde alfabe uygulamak için bir COLLATE yan tümcesini aşağıdaki gibi kullanın:SELECT name FROM customer ORDER BY name COLLATE Latin1_General_CS_AI
Başa Dön
Yerel Ayar
yerel ayar ayar bir alan veya bir kültür ile ilgili bilgiler kümesidir.Bu ad ve konuşulan dil, dil ve kültür kurallarını yazmak için kullanılan komut tanımlayıcısı içerir.Alfabe bir veya birden çok yerel ayarları ile ilişkilendirilebilir.
Başa Dön
Unicode
Her zaman birden çok dil gösteren karakter veri depolamak, Unicode veri türlerini kullanın ( nchar, nvarchar, ve ntext) yerine, Unicode olmayan veri türleri ( char, varchar, ve text).
Önemli kısıtlamalar, Unicode olmayan veri türleriyle ilişkilendirilir.Unicode olmayan bir bilgisayara tek kod sayfasını kullanmak üzere sınırlandırılacak olmasıdır.Daha az kod sayfa dönüştürme gerekli olduğundan, Unicode kullanarak performans kazancı yaşayabilirsiniz.Unicode alfabe, tek başına sunucu düzeyinde desteklemediği için veritabanı, sütununu veya ifade düzeyinde seçilmesi gerekir.
Kod sayfaları kullanan bir istemci işletim sistemi ayarlarınız tarafından belirlenir.İçin küme İstemci kod sayfasıWindows 2000Windows XPWindows Server 2003, orWindows Server 2008işletim sistemleri,Bölgesel küme tings Denetim Masası '.
Sunucudan istemciye veri taşırken, kendi sunucu harmanlama düzeni eski istemci sürücüleri tanınabileceği değil.Unicode olmayan istemci için bir Unicode sunucudan veri taşıdığınızda, bu durum oluşabilir.Temel sistem alfabe güncelleştirilir, istemci işletim sistemini yükseltmek için en iyi seçenek olabilir.İstemci veritabanı istemci yazılımı yüklü ise, veritabanı istemci yazılımı bir hizmet güncelleştirmesi uygulama düşünebilirsiniz.
Sunucu verileri farklı bir harmanlama deneyebilirsiniz.Kod sayfa istemcide eşleyen bir harmanlama seçin.Daha fazla bilgi için "ayarlama ve değiştirme harmanlamalar" konusuna bakınSQL ServerOnline defterleri.
Unicode veya Unicode olmayan veri türleri kullanılmasıyla ilgili konuları değerlendirmek için senaryoyu ortamınızın performans farklılıkları ölçmek için test edin.Kuruluşunuzdaki sistemlerinde kullanılan harmanlama standartlaştırmak ve mümkün olan her yerde Unicode sunuculara ve istemcilere dağıtmak için iyi bir uygulamadır.Unicode hakkında daha fazla bilgi için bkz:Unicode Consortium Web sitesi.
In many situations, SQL Server will interact with other servers or clients, and your organization might use multiple data access standards between applications and server instances.SQL Server clients are one of two main types:
Unicode istemcileri OLE DB ve açık veritabanı bağlantısı (ODBC) sürüm 3. 7'yi veya bir sonraki sürümü.
Unicode olmayan istemciler DB-Library ve ODBC sürümü 3.6 veya bir önceki sürüm.
Aşağıdaki tabloda, birden çok dildeki verileri ile Unicode ve Unicode olmayan sunucular çeşitli birleşimleri kullanma hakkında bilgi sağlar.
Sunucu |
istemci |
Sosyal haklar veya kısıtlamaları |
---|---|---|
Unicode |
Unicode |
Sistemin tamamında kullanılacak Unicode verileri için bu senaryo, en iyi performans ve alınan veri bozulmasına karşı koruma sağlar.ActiveX Data Objects (ADO), OLE DB ve ODBC sürüm 3.7 veya sonraki bir sürüm durumudur. |
Unicode |
Unicode olmayan |
Bu senaryoda, özellikle de eski bir sürüm çalıştıran bir istemci ile yeni bir işletim sistemi çalıştıran bir sunucu arasındaki bağlantı ileSQL Server, eski bir işletim sisteminde bulunabilir sınırlamaları veya hata verileri bir istemci bilgisayar. taşıdığınızda veyaSunucuda Unicode veri, ilgili kod sayfa verileri dönüştürmek için Unicode olmayan istemci üzerindeki eşlemek deneyecek. |
Unicode olmayan |
Unicode |
Bu, birden çok dildeki verileri kullanmak için ideal bir yapılandırma değildir.Unicode olmayan sunucuya Unicode veri yazılamıyor.Sorun sunucu kod sayfa dışında bulunan sunuculara gönderilen veri ortaya olasıdır. |
Unicode olmayan |
Unicode olmayan |
Bu, birden çok dildeki veriler için çok kısıtlayıcı bir senaryodur.Yalnızca tek bir kod sayfa kullanabilirsiniz. |
Unicode olmayan bir istemciye bir Unicode sunucusundan özel bir istemciye sunucudan veri taşırken, hatalar veya sorunlar yaşıyorsanız, sunucu harmanlama düzeni eski istemci sürücüleri tanınabileceği değil.Bu durumda, temel sistem alfabe güncelleştirilir, istemci işletim sistemini yükseltmek için en iyi seçenek olabilir.İstemci veritabanı istemci yazılımı yüklü ise, veritabanı istemci yazılımı bir hizmet güncelleştirmesi uygulama düşünebilirsiniz.
Sunucu verileri farklı bir harmanlama deneyebilirsiniz.Kod sayfa istemcide eşleyen bir harmanlama seçin.Alfabe düzenlerini değiştirme hakkında daha fazla bilgi için "ayarlama ve değiştirme harmanlamalar,SQL Server"konusundakiSQL ServerOnline defterleri.Alfabe düzenlerini değiştirme hakkında daha fazla bilgi için "SQL ServerEn iyi yöntemler harmanlama değiştir "Beyaz kağıt.Geçiş hakkında daha fazla bilgi için bkz: Unicode olmayan veri türleri Unicode, "SQL ServerEn iyi yöntemler geçiş Unicode "whitepape.
İlgili konular:Unicode temelleri
Başa Dön
Kod sayfa
Bir kod sayfa bir sıralı değil küme karakter, bir sayısal dizin veya kod noktası değeri ilişkili belirli bir komut dosyası, her karakteri.A Windows kod sayfa sık başvurulan olarak birkarakter kümesi or charset.Kod sayfaları farklı Windows sistem yerel ayarları tarafından kullanılan klavye düzenleri ve karakter kümeleri için destek sağlamak için kullanılır.
TümWindows Server 2008Unicode alfabe Unicode 5.0 tabanlı.
Başa Dön
Veri Türleri
Değer aralık belirten bir tanımı, değerler ve değerler bellekte nasıl saklandığını gerçekleştirilen işlemler, bir veri türüdür.Veri türlerini tanımlamaya olanak sağlar.SQL Serverpredictably denetlemek.Unicode olmayan karakter veri türlerichar,varchar, vetext.Unicode veri türlerinchar,nvarchar, ventext.Özellikle, birden çok dil gösteren karakter verileri saklarsınız, uygulamalarınızda, Unicode veri türlerini kullanmanızı öneririz.
Geçiş hakkında daha fazla bilgi için bkz: Unicode olmayan veri türleri Unicode, "SQL ServerEn iyi yöntemler geçiş Unicode "Teknik İnceleme.
İlgili konular:Veri türleri (Veritabanı Altyapısı), (Transact-SQL) veri türleri, Tümleştirme Hizmetleri veri türleri
Başa Dön
Sıralama düzeni
sıralama düzeni, veri değerleri nasıl sıralanacağını belirler.Bu verileri karşılaştırma sonuçlar etkiler.Alfabe düzenlerini kullanan verileri sıralanır ve bu dizinleri kullanarak optimize.
İlgili konular:Windows harmanlaması sıralama stilleri, Dizinler
Başa Dön