Comprendere le collazioni in Babelfish per Aurora Postgre SQL - Amazon Aurora

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Comprendere le collazioni in Babelfish per Aurora Postgre SQL

Quando crei un cluster Aurora Postgre SQL DB con Babelfish, scegli una collazione per i tuoi dati. Una regola di confronto specifica i modelli di ordinamento e bit che producono il testo o i caratteri in una determinata lingua scritta. Una regola di confronto include regole che confrontano i dati per un determinato set di modelli di bit. La regola di confronto è correlata alla localizzazione. Le diverse impostazioni locali influenzano la mappatura dei caratteri, l'ordinamento e simili. Gli attributi della regola di confronto si riflettono nei nomi di varie regole di confronto. Per ulteriori informazioni sugli attributi, consulta Babelfish collation attributes table.

Babelfish associa le regole di confronto del SQL Server a regole di confronto comparabili fornite da Babelfish. Babelfish predefinisce le raccolte Unicode con raccolte di stringhe culturalmente sensibili e ordini di ordinamento. Babelfish fornisce anche un modo per tradurre le regole di confronto presenti nel tuo Server DB nelle regole di confronto Babelfish più simili. SQL Vengono fornite raccolte specifice per le diverse lingue e regioni.

Alcune raccolte specificano una pagina codice corrispondente a una codifica lato client. Babelfish traduce automaticamente dalla codifica del server alla codifica client a seconda della raccolta di ciascuna colonna di output.

Babelfish supporta le regole di confronto elencate nella Babelfish supported collations table. Babelfish associa le regole di confronto del Server a regole di confronto comparabili fornite da Babelfish. SQL

Babelfish utilizza la versione 153.80 della libreria di confronto International Components for Unicode (). ICU Per ulteriori informazioni sulle regole di confronto, vedete ICU Collation nella documentazione. ICU Per saperne di più su SQL Postgre e le regole di confronto, consulta Collation Support nella documentazione di Postgre. SQL

Parametri del cluster database che controllano regole di confronto e impostazioni locali

I seguenti parametri influiscono sul comportamento della regola di confronto.

babelfishpg_tsql.default_locale

Questo parametro specifica le impostazioni locali predefinite utilizzate dalla regola di confronto. Questo parametro viene utilizzato in combinazione con gli attributi elencati nella Babelfish collation attributes table per personalizzare le regole di confronto per una lingua e una regione specifici. Il valore predefinito per questo parametro è en-US.

Le impostazioni locali predefinite si applicano a tutti i nomi di confronto di Babelfish che iniziano con "BBF" e a tutte SQL le regole di confronto del Server mappate alle regole di confronto Babelfish. La modifica dell'impostazione di questo parametro su un cluster database Babelfish esistente non influenza le impostazioni locali delle regole di confronto esistenti. Per l'elenco delle regole di confronto, consulta Babelfish supported collations table.

babelfishpg_tsql.server_collation_name

Questo parametro specifica le regole di confronto predefinite per il server (istanza del cluster SQL DB Aurora Postgre) e il database. Il valore predefinito è sql_latin1_general_cp1_ci_as. Deve server_collation_name essere una CI_AS collazione perché in T-SQL, la collazione del server determina il modo in cui gli identificatori vengono confrontati.

Quando crei il tuo cluster database Babelfish, scegli il Collation name (Nome regola di confronto) dall'elenco selezionabile. Questi includono le regole di confronto elencate in Babelfish supported collations table. Non modificare il server_collation_name dopo la creazione del database Babelfish.

Le impostazioni che scegli quando crei il tuo cluster Babelfish for Aurora Postgre SQL DB vengono archiviate nel gruppo di parametri del cluster DB associato al cluster per questi parametri e ne impostano il comportamento di confronto.

Collazioni deterministiche e non deterministiche in Babelfish

Babelfish supporta le raccolte deterministiche e non deterministiche:

  • Una regola di confronto deterministica valuta come uguali i caratteri con sequenze di byte identiche. Ciò significa che x e X non sono uguali in una regola di confronto deterministica. Le regole di confronto deterministiche possono essere con distinzione maiuscole/minuscole (CS) e con distinzione caratteri accentati/non accentati (AS).

  • Una regola di confronto non deterministica non richiede una corrispondenza identica. Una raccolta non deterministica valuta x e X come uguale. Le collazioni non deterministiche sono insensibili alle maiuscole e minuscole (CI) o all'accento (AI), o entrambe.

Nella tabella seguente, puoi trovare alcune differenze di comportamento tra Babelfish e Postgre quando si utilizzano regole di confronto non deterministiche. SQL

Babelfish Postgre SQL

Supporta la LIKE clausola per le regole di confronto CI_AS.

Non supporta la LIKE clausola sulle regole di confronto non deterministiche.

Supporta la LIKE clausola solo nelle seguenti regole di confronto AI della versione 4.2.0 di Babelfish:

  • bbf_unicode_cp1250_ci_ai

  • bbf_unicode_cp1250_cs_ai

  • bbf_unicode_cp1257_ci_ai

  • bbf_unicode_cp1257_cs_ai

  • bbf_unicode_cp1_ci_ai

  • bbf_unicode_cp1_cs_ai

  • estone_ci_ai

  • finlandese_svedese_ci_ai

  • frances_ci_ai

  • latin1_general_ci_ai

  • latin1_general_cs_ai

  • spagnolo_moderno_ci_ai

  • polacco_ci_ai

  • sql_latin1_general_cp1_ci_ai

  • sql_latin1_general_cp1_cs_ai

  • spagnolo_tradizionale_ci_ai

Non supporta la clausola sulle regole di confronto non deterministiche. LIKE

Per un elenco di altre limitazioni e differenze di comportamento per Babelfish rispetto a Server e Postgre, vedi. SQL SQL Limitazioni di regole di confronto e differenze di comportamento

Babelfish e SQL Server seguono una convenzione di denominazione per le regole di confronto che descrivono gli attributi di confronto, come mostrato nella tabella seguente.

Attributo Descrizione

Intelligenza artificiale

Insensibile all'accento.

AS

sensibile agli accenti.

BIN2

BIN2richiede che i dati vengano ordinati in ordine di punti di codice. L'ordine dei punti di codice Unicode è lo stesso ordine dei caratteri per le UTF codifiche -8, UTF -16 e UCS -2. L'ordine dei punti di codice è una raccolta deterministica rapida.

CI

Senza distinzione tra maiuscole e minuscole

CS

Distinzione tra lettere maiuscole e minuscole

PREF

Per ordinare le lettere maiuscole prima delle lettere minuscole, utilizzate un confronto. PREF Se la raccolta è priva di distinzione tra maiuscole e minuscole, la versione maiuscola di una lettera viene ordinata prima della versione minuscola, se non esiste altra distinzione. La ICU libreria supporta la preferenza delle lettere maiuscole concolCaseFirst=upper, ma non per le regole di confronto CI_AS.

PREFpuò essere applicato solo alle regole di confronto deterministiche. CS_AS

Le regole di confronto sono supportate a livello di database in Babelfish

Le seguenti regole di confronto sono supportate a livello di database in Babelfish:

  • bbf_unicode_bin2

  • bbf_unicode_cp1_ci_ai

  • bbf_unicode_cp1_ci_as

  • bbf_unicode_cp1250_ci_ai

  • bbf_unicode_cp1250_ci_it

  • bbf_unicode_cp1257_ci_ai

  • bbf_unicode_cp1257_ci_as

  • estone_ci_ai

  • estone_ci_as

  • finlandese_svedese_ci_ai

  • finnish_swedish_ci_as

  • frances_ci_ai

  • french_ci_as

  • latin1_general_bin2

  • latin1_general_ci_ai

  • latin1_general_ci_as

  • latin1_general_90_bin2

  • latin1_general_100_bin2

  • latin1_general_140_bin2

  • spagnolo_moderno_ci_ai

  • modern_spanish_ci_as

  • polacco_ci_ai

  • polish_ci_as

  • sql_latin1_general_cp1_ci_ai

  • SQL_Latin1_General_CP1_CI_AS (default)

  • sql_latin1_general_cp1250_ci_as

  • sql_latin1_general_cp1251_ci_as

  • sql_latin1_general_cp1257_ci_as

  • spagnolo_tradizionale_ci_ai

  • traditional_spanish_ci_as

Nota

Per utilizzare un confronto diverso a livello di database, assicurati che corrisponda a quello a livello di server. Per ulteriori informazioni, consulta Collazioni di server e oggetti in Babelfish

Collazioni di server e oggetti in Babelfish

Utilizzare le raccolte seguenti come raccolta del server o come raccolta di oggetti.

ID raccolta Note

bbf_unicode_general_ci_as

Supporta il confronto senza distinzione tra maiuscole e minuscole e l'operatore. LIKE

bbf_unicode_cp1_ci_as

Collazione non deterministica nota anche come. CP1252

CP125bbf_unicode_ 0_ci_as

Raccolta non deterministica utilizzata per rappresentare testi nelle lingue dell'Europa centrale e dell'Europa orientale che utilizzano lo script latino.

bbf_unicode_ CP1251 _ci_it

Raccolta non deterministica per le lingue che utilizzano lo script cirillico.

bbf_unicode_cp1253_ci_as

Raccolta non deterministica usata per rappresentare il greco moderno.

bbf_unicode_cp1254_ci_as

Raccolta non deterministica che supporta il turco.

bbf_unicode_cp1255_ci_as

Raccolta non deterministica che supporta l'ebraico.

bbf_unicode_cp1256_ci_as

Raccolta non deterministica utilizzata per scrivere lingue che utilizzano lo script arabo.

bbf_unicode_cp1257_ci_as

Raccolta non deterministica utilizzata per supportare le lingue estone, lettone e lituano.

bbf_unicode_cp1258_ci_as

Raccolta non deterministica utilizzata per scrivere caratteri vietnamiti.

bbf_unicode_cp874_ci_as

Raccolta non deterministica utilizzata per scrivere caratteri thailandesi.

sql_latin1_general_cp1250_ci_as

Codifica di caratteri a byte singolo non deterministico usata per rappresentare caratteri latini.

sql_latin1_general_cp1251_ci_as

Raccolta non deterministica che supporta i caratteri latini.

SQL_Latin1_General_CP1_CI_AS (default)

Raccolta non deterministica che supporta i caratteri latini.

sql_latin1_general_cp1253_ci_as

Raccolta non deterministica che supporta i caratteri latini.

sql_latin1_general_cp1254_ci_as

Raccolta non deterministica che supporta i caratteri latini.

sql_latin1_general_cp1255_ci_as

Raccolta non deterministica che supporta i caratteri latini.

sql_latin1_general_cp1256_ci_as

Raccolta non deterministica che supporta i caratteri latini.

sql_latin1_general_cp1257_ci_as

Raccolta non deterministica che supporta i caratteri latini.

sql_latin1_general_cp1258_ci_as

Raccolta non deterministica che supporta i caratteri latini.

chinese_PRC_CI_AS

Collazione non deterministica che supporta il cinese (). PRC

cyrillic_general_ci_as

Raccolta non deterministica che supporta il cirillico.

finnish_swedish_ci_as

Raccolta non deterministica che supporta che supporta il finlandese.

french_ci_as

Raccolta non deterministica che supporta il francese.

japanese_ci_as

Regola di confronto non deterministica che supporta il giapponese. Supportata in Babelfish 2.1.0 e versioni successive.

korean_wansung_ci_as

Raccolta non deterministica che supporta il coreano (con ordinamento del dizionario).

latin1_general_ci_as

Raccolta non deterministica che supporta i caratteri latini.

modern_spanish_ci_as

Raccolta non deterministica che supporta lo spagnolo moderno.

polish_ci_as

Raccolta non deterministica che supporta il polacco.

thai_ci_as

Raccolta non deterministica che supporta il tailandese.

traditional_spanish_ci_as

Raccolta non deterministica che supporta lo spagnolo (classificazione tradizionale).

turkish_ci_as

Raccolta non deterministica che supporta il turco.

ukrainian_ci_as

Raccolta non deterministica che supporta l'ucraino.

vietnamese_ci_as

Raccolta non deterministica che supporta il vietnamita.

È possibile utilizzare le seguenti raccolte come raccolte tra oggetti.

Dialetto Opzioni deterministiche Opzioni non deterministiche

Arabo

Arabic_cs_as

Arabic_CI_AS

Arabico_CI_AI

Alfabeto arabo

BBF_Unicode_ _CS_AS CP1256

BBF_Unicode_Pref_ CP1256 _CS_AS

BBF_Unicode_ CP1256 _CI_AI

BBF_Unicode_ CP1256 _CS_AI

Binario

latino1_general_bin2

BBF_Unicode_ BIN2

Lingue dell'Europa centrale e dell'Europa orientale che utilizzano caratteri latini

BBF_Unicode_ 0_CS_AS CP125

BBF_Unicode_Pref_ CP125 0_CS_AS

BBF_Unicode_ CP125 0_CI_AI

BBF_Unicode_ CP125 0_CS_AI

Cinese

Cinese_ PRC _CS_AS

Cinese_ PRC _CI_AS

Cinese_ PRC _CI_AI

Cyrillic_General

Cyrillic_general_cs_as

Cirillico generale_CI_AS

cirillico_general_CI_AI

Scrittura cirillica

BBF_Unicode_ CP1251 _CS_AS

BBF_Unicode_Pref_ CP1251 _CS_AS

BBF_Unicode_ CP1251 _CI_AI

BBF_Unicode_ CP1251 _CS_AI

Estone

Estonian_cs_as

estone_CI_AS

Estone_CI_AI

estone, lettone e lituano

BBFCP1257_Unicode_ _CS_AS

BBF_Unicode_Pref_ CP1257 _CS_AS

BBF_Unicode_ CP1257 _CI_AI

BBF_Unicode_ CP1257 _CS_AI

Finnish_Swedish

Finnish_Swedish_CS_AS

Finnish_Swedish_CI_AS

Finlandese_svedese_CI_AI

Francese

French_CS_AS

French_CI_AS

Francese_CI_AI

Greco

Greek_CS_AS

Greco_CI_AS

Greco_CI_AI

Ebraico

BBF_Unicode_ _CS_AS CP1255

BBF_Unicode_Pref_ CP1255 _CS_AS

Hebrew_CS_AS

BBF_Unicode_ CP1255 _CI_AI

BBF_Unicode_ CP1255 _CS_AI

Hebrew_CI_AS

Ebraico_CI_AI

Giapponese (Babelfish 2.1.0 e versioni successive)

Japanese_CS_AS

Giapponese_CI_AI

Japanese_CI_AS

Korean_Wamsung

Korean_Wamsung_CS_AS

coreano_Wamsung_CI_AS

coreano_Wamsung_CI_AI

Caratteri latini per la tabella codici CP1252

latin1_general_cs_as

BBF_Unicode_general_cs_as

BBF_Unicode_general_pref_cs_AS

BBFCP1_Unicode_Pref_ _CS_AS

BBF_Unicode_ _CS_AS CP1

latin1_general_ci_as

latin1_general_ci_ai

latin1_general_cs_ai

BBF_Unicode_generale_CI_AI

BBF_Unicode_General_CS_AI

BBFCP1_Unicode_ _CI_AI

BBF_Unicode_ CP1 _CS_AI

Greco moderno

BBF_Unicode_ _CS_AS CP1253

BBF_Unicode_Pref_ CP1253 _CS_AS

BBF_Unicode_ CP1253 _CI_AI

BBF_Unicode_ CP1253 _CS_AI

Modern_Spanish

Modern_Spanish_CS_AS

Modern_Spanish_CI_AS

CI_AI in spagnolo moderno

Mongolo

Mongolian_CS_AS

CI_AS mongolo

mongolo_CI_AI

Polacco

Polish_CS_AS

Polish_CI_AS

Polacco_CI_AI

Thai

BBF_Unicode_ _CS_AS CP874

BBF_Unicode_Pref_ CP874 _CS_AS

Thai_CS_AS

BBF_Unicode_ CP874 _CI_AI

BBF_Unicode_ CP874 _CS_AI

Thai_CI_AS, Thai_CI_AI

Traditional_Spanish

Traditional_Spanish_CS_AS

CI_AS in spagnolo tradizionale

Spagnolo_tradizionale_CI_AI

Turco

BBF_Unicode_ _CS_AS CP1254

BBF_Unicode_Pref_ CP1254 _CS_AS

Turkish_CS_AS

BBF_Unicode_ CP1254 _CI_AI

BBF_Unicode_ CP1254 _CS_AI

Turkish_CI_AS, Turkish_CI_AI

Ucraino

Ukranian_CS_AS

UCRAINO_CI_AS

Ucraino_CI_AI

Vietnamita

BBF_Unicode_ _CS_AS CP1258

BBF_Unicode_Pref_ CP1258 _CS_AS

Vietnamese_CS_AS

BBF_Unicode_ CP1258 _CI_AI

BBF_Unicode_ CP1258 _CS_AI

CI_AS vietnamita

Vietnamita CI_AI

Comportamento di confronto predefinito in Babelfish

In precedenza, la regola di confronto predefinita dei tipi di dati di regola di confronto era pg_catalog.default. I tipi di dati e gli oggetti che dipendono da questi tipi di dati seguono la regola di confronto con distinzione tra maiuscole e minuscole. Questa condizione ha un potenziale impatto sugli SQL oggetti T del set di dati con regole di confronto senza distinzione tra maiuscole e minuscole. A partire da Babelfish 2.3.0, le regole di confronto predefinite per i tipi di dati collezionabili (eccetto TEXT eNTEXT) sono le stesse delle regole di confronto nel parametro. babelfishpg_tsql.server_collation_name Quando esegui l'aggiornamento a Babelfish 2.3.0, la regola di confronto predefinita viene selezionata automaticamente al momento della creazione del cluster database, senza alcun impatto visibile.