Nome de agrupamento do Windows (Transact-SQL)
Especifica o nome de agrupamento do Windows na cláusula COLLATE em SQL Server 2012. O nome de agrupamento do Windows é composto pelo designador de agrupamento e pelos estilos de comparação.
Convenções de sintaxe Transact-SQL
Sintaxe
<Windows_collation_name> :: =
CollationDesignator_<ComparisonStyle>
<ComparisonStyle> :: =
{ CaseSensitivity_AccentSensitivity
[ _KanatypeSensitive ] [ _WidthSensitive ] }
| { _BIN | _BIN2 }
Argumentos
CollationDesignator
Especifica as regras de agrupamento básicas usadas pelo agrupamento do Windows. As regras de agrupamento básicas abrangem o seguinte:As regras de classificação que são aplicadas quando a classificação do dicionário é especificada. As regras de classificação são baseadas no alfabeto ou no idioma.
A página de código usada para armazenar dados de caracteres não Unicode.
Alguns exemplos são:
Latin1_General ou francês: ambos usam página de código 1252.
Turco: usa página de código 1254.
CaseSensitivity
CI especifica que não diferencia maiúsculas de minúsculas, CS especifica que diferencia maiúsculas de minúsculas.AccentSensitivity
AI especifica que não diferencia acentos, AS especifica que diferencia acento.KanatypeSensitive
Omitido especifica que não faz distinção de caracteres kana, KS especifica que faz distinção de caracteres kana.WidthSensitivity
Omitido especifica que não distingue largura, WS especifica que distingue largura.BIN
Especifica a ordem de classificação binária compatível com versões anteriores que será usada.BIN2
Especifica a ordem de classificação binária que usa semântica de comparação de ponto de código.
Comentários
Dependendo da versão dos agrupamentos pode haver alguns pontos de código indefinidos. Por exemplo, compare:
SELECT LOWER(nchar(504) COLLATE Latin1_General_CI_AS);
SELECT LOWER (nchar(504) COLLATE Latin1_General_100_CI_AS);
GO
A primeira linha retorna um caractere maiúsculo quando o agrupamento é Latin1_General_CI_AS, porque esse ponto de código é indefinido nesse agrupamento.
Quando você trabalha com alguns idiomas, pode ser importante evitar os agrupamentos mais antigos. Por exemplo, isso vale para o Telegu.
Em alguns casos, agrupamentos do Windows e agrupamentos do SQL Server podem gerar diferentes planos de consulta para a mesma consulta.
Exemplos
A seguir estão alguns exemplos de nomes de agrupamento do Windows:
- Latin1_General_100_
O agrupamento usa as regras de classificação do dicionário Latin1 Geral, página de código 1252. Não diferencia maiúsculas de minúsculas e diferencia acento. O agrupamento usa as regras de classificação do dicionário Latin1 Geral e é mapeado para a página de código 1252. Mostra o número de versão do agrupamento se for um agrupamento do Windows: _90 ou _100. Não diferencia maiúsculas de minúsculas (CI) e diferencia acento (AS).
Estonian_CS_AS
O agrupamento usa as regras de classificação do dicionário estoniano, página de código 1257. Diferencia maiúsculas de minúsculas e diferencia acento.
Latin1_General_BIN
O agrupamento usa página de código 1252 e regras de classificação binárias. As regras de classificação do dicionário Latin1 Geral são ignoradas.
Agrupamentos do Windows
Para listar os agrupamentos do Windows suportados pela instância do SQL Server, execute a seguinte consulta.
SELECT * FROM sys.fn_helpcollations() WHERE name NOT LIKE 'SQL%';
A tabela a seguir lista todos os agrupamentos do Windows com suporte no SQL Server 2012.
Localidade do Windows |
Agrupamento versão 100 |
Agrupamento versão 90 |
---|---|---|
Alsaciano (França) |
Latin1_General_100_ |
Não disponível |
Amárico (Etiópia) |
Latin1_General_100_ |
Não disponível |
Armênio (Armênia) |
Cyrillic_General_100_ |
Não disponível |
Assamês (Índia) |
Assamese_100_ 1 |
Não disponível |
Bashkir (Rússia) |
Bashkir_100_ |
Não disponível |
Basco (País Basco) |
Latin1_General_100_ |
Não disponível |
Bengali (Bangladesh) |
Bengali_100_1 |
Não disponível |
Bengali (Índia) |
Bengali_100_1 |
Não disponível |
Bósnio (Bósnia e Herzegovina, Cirílico) |
Bosnian_Cyrillic_100_ |
Não disponível |
Bósnio (Bósnia e Herzegovina, Latino) |
Bosnian_Latin_100_ |
Não disponível |
Bretão (França) |
Breton_100_ |
Não disponível |
Chinês (RAE de Macau) |
Chinese_Traditional_Pinyin_100_ |
Não disponível |
Chinês (RAE de Macau) |
Chinese_Traditional_Stroke_Order_100_ |
Não disponível |
Chinês (Cingapura) |
Chinese_Simplified_Stroke_Order_100_ |
Não disponível |
Corso (França) |
Corsican_100_ |
Não disponível |
Croata (Bósnia e Herzegovina, Latino) |
Croatian_100_ |
Não disponível |
Dari (Afeganistão) |
Dari_100_ |
Não disponível |
Inglês (Índia) |
Latin1_General_100_ |
Não disponível |
Inglês (Malásia) |
Latin1_General_100_ |
Não disponível |
Inglês (Cingapura) |
Latin1_General_100_ |
Não disponível |
Filipino (Filipinas) |
Latin1_General_100_ |
Não disponível |
Frisão (Holanda) |
Frisian_100_ |
Não disponível |
Georgiano (Geórgia) |
Cyrillic_General_100_ |
Não disponível |
Groenlandês (Groenlândia) |
Danish_Greenlandic_100_ |
Não disponível |
Gujarati (Índia) |
Indic_General_100_1 |
Indic_General_90_ |
Hausa (Nigéria, Latino) |
Latin1_General_100_ |
Não disponível |
Híndi (Índia) |
Indic_General_100_1 |
Indic_General_90_ |
Igbo (Nigéria) |
Latin1_General_100_ |
Não disponível |
Inuktitut (Canadá, latino) |
Latin1_General_100_ |
Não disponível |
Inuktitut (silábico) Canadá |
Latin1_General_100_ |
Não disponível |
Irlandês (Irlanda) |
Latin1_General_100_ |
Não disponível |
Japonês (Japão XJIS) |
Japanese_XJIS_100_ |
Japanese_90_, Japanese_ |
Japonês (Japão) |
Japanese_Bushu_Kakusu_100_ |
Não disponível |
Kannada (Índia) |
Indic_General_100_1 |
Indic_General_90_ |
Khmer (Camboja) |
Khmer_100_1 |
Não disponível |
Quiché (Guatemala) |
Modern_Spanish_100_ |
Não disponível |
Quiniaruanda (Ruanda) |
Latin1_General_100_ |
Não disponível |
Konkani (Índia) |
Indic_General_100_1 |
Indic_General_90_ |
Laosiano (RDP do Laos) |
Lao_100_1 |
Não disponível |
Sorábio baixo (Alemanha) |
Latin1_General_100_ |
Não disponível |
Luxemburguês (Luxemburgo) |
Latin1_General_100_ |
Não disponível |
Malaiala (Índia) |
Indic_General_100_1 |
Não disponível |
Maltês (Malta) |
Maltese_100_ |
Não disponível |
Maori (Nova Zelândia) |
Maori_100_ |
Não disponível |
Mapudungun (Chile) |
Mapudungan_100_ |
Não disponível |
Marati (Índia) |
Indic_General_100_1 |
Indic_General_90_ |
Mohawk (Canadá) |
Mohawk_100_ |
Não disponível |
Mongol (RPC) |
Cyrillic_General_100_ |
Não disponível |
Nepalês (Nepal) |
Nepali_100_1 |
Não disponível |
Norueguês (Bokmål, Noruega) |
Norwegian_100_ |
Não disponível |
Norueguês (Nynorsk, Noruega) |
Norwegian_100_ |
Não disponível |
Occitano (França) |
French_100_ |
Não disponível |
Oriá (Índia) |
Indic_General_100_1 |
Não disponível |
Pashto (Afeganistão) |
Pashto_100_1 |
Não disponível |
Persa (Irã) |
Persian_100_ |
Não disponível |
Punjabi (Índia) |
Indic_General_100_1 |
Indic_General_90_ |
Quíchua (Bolívia) |
Latin1_General_100_ |
Não disponível |
Quíchua (Equador) |
Latin1_General_100_ |
Não disponível |
Quíchua (Peru) |
Latin1_General_100_ |
Não disponível |
Romanche (Suíça) |
Romansh_100_ |
Não disponível |
Sami (Inari, Finlândia) |
Sami_Sweden_Finland_100_ |
Não disponível |
Sami (Lule, Noruega) |
Sami_Norway_100_ |
Não disponível |
Sami (Lule, Suécia) |
Sami_Sweden_Finland_100_ |
Não disponível |
Sami (Norte, Finlândia) |
Sami_Sweden_Finland_100_ |
Não disponível |
Sami (Norte, Noruega) |
Sami_Norway_100_ |
Não disponível |
Sami (Norte, Suécia) |
Sami_Sweden_Finland_100_ |
Não disponível |
Sami (Skolt, Finlândia) |
Sami_Sweden_Finland_100_ |
Não disponível |
Sami (Sul, Noruega) |
Sami_Norway_100_ |
Não disponível |
Sami (Sul, Suécia) |
Sami_Sweden_Finland_100_ |
Não disponível |
Sânscrito (Índia) |
Indic_General_100_1 |
Indic_General_90_ |
Sérvio (Bósnia e Herzegovina, cirílico) |
Serbian_Cyrillic_100_ |
Não disponível |
Sérvio (Bósnia e Herzegovina, latino) |
Serbian_Latin_100_ |
Não disponível |
Sérvio (Sérvia, cirílico) |
Serbian_Cyrillic_100_ |
Não disponível |
Sérvio (Sérvia, latino) |
Serbian_Latin_100_ |
Não disponível |
Sesotho sa Leboa/Sotho do Norte (África do Sul) |
Latin1_General_100_ |
Não disponível |
Setswana/Tswana (África do Sul) |
Latin1_General_100_ |
Não disponível |
Cingalês (Sri Lanka) |
Indic_General_100_1 |
Não disponível |
Suaíle (Quênia) |
Latin1_General_100_ |
Não disponível |
Siríaco (Síria) |
Syriac_100_1 |
Syriac_90_ |
Tadjique (Tadjiquistão) |
Cyrillic_General_100_ |
Não disponível |
Tamazirte (Argélia, latino) |
Tamazight_100_ |
Não disponível |
Tâmil (Índia) |
Indic_General_100_1 |
Indic_General_90_ |
Télugo (Índia) |
Indic_General_100_1 |
Indic_General_90_ |
Tibetano (RPC) |
Tibetan_100_1 |
Não disponível |
Turcomeno (Turcomenistão) |
Turkmen_100_ |
Não disponível |
Uighur (RPC) |
Uighur_100_ |
Não disponível |
Sorábio Alto (Alemanha) |
Upper_Sorbian_100_ |
Não disponível |
Urdu (Paquistão) |
Urdu_100_ |
Não disponível |
Galês (Reino Unido) |
Welsh_100_ |
Não disponível |
Uólofe (Senegal) |
French_100_ |
Não disponível |
Xhosa/isiXhosa (África do Sul) |
Latin1_General_100_ |
Não disponível |
Yakut (Rússia) |
Yakut_100_ |
Não disponível |
Yi (RPC) |
Latin1_General_100_ |
Não disponível |
Ioruba (Nigéria) |
Latin1_General_100_ |
Não disponível |
Zulu/isiZulu (África do Sul) |
Latin1_General_100_ |
Não disponível |
Preterido, não disponível no nível do servidor no SQL Server 2008 nem em versões mais recentes |
Híndi |
Híndi |
Preterido, não disponível no nível do servidor no SQL Server 2008 nem em versões mais recentes |
Korean_Wansung_Unicode |
Korean_Wansung_Unicode |
Preterido, não disponível no nível do servidor no SQL Server 2008 nem em versões mais recentes |
Lithuanian_Classic |
Lithuanian_Classic |
Preterido, não disponível no nível do servidor no SQL Server 2008 nem em versões mais recentes |
Macedônio |
Macedônio |
1Agrupamentos do Windows somente Unicode podem ser aplicados apenas a dados nos níveis de coluna ou de expressão. Eles não podem ser usados como agrupamentos de banco de dados ou de servidor.
2Como o agrupamento de Chinês (Taiwan), Chinês (Macau) usa as regras de Chinês Simplificado; ao contrário do Chinês (Taiwan), usa a página de código 950.
Consulte também
Referência
CREATE DATABASE (Transact-SQL)
DECLARE @local\_variable (Transact-SQL)
sys.fn_helpcollations (Transact-SQL)