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à.
Regole di confronto supportate da Babelfish
Quando crei un cluster database Aurora PostgreSQL, scegli una regola di confronto per i 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 mappa le raccolte di SQL Server a raccolte 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 raccolte nel database di SQL Server nella raccolta Babelfish più vicina. 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 mappa le raccolte di SQL Server a raccolte comparabili fornite da Babelfish.
Babelfish utilizza la versione 153.80 della libreria delle regole di confronto International Components for Unicode (ICU). Per ulteriori informazioni sulle regole di confronto ICU, consulta Collation
Argomenti
- Parametri del cluster database che controllano regole di confronto e impostazioni locali
- Regole di confronto deterministiche e non deterministiche e Babelfish
- Regole di confronto supportate da Babelfish
- Regola di confronto predefinita in Babelfish
- Gestione delle raccolte
- Limitazioni di regole di confronto e differenze di comportamento
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 delle regole di confronto Babelfish che iniziano con "BBF" e a tutte le regole di confronto SQL 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 la regola di confronto predefinita per il server (istanza del cluster database Aurora PostgreSQL) e il database. Il valore di default è
sql_latin1_general_cp1_ci_as
. Ilserver_collation_name
deve essere una raccoltaCI_AS
perché in T-SQL, la raccolta determina il modo in cui vengono confrontati gli identificatori.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 scelte durante la creazione del cluster database Babelfish per Aurora PostgreSQL vengono memorizzate nel gruppo di parametri del cluster database associato al cluster per questi parametri e impostano il comportamento della regola di confronto.
Regole di confronto deterministiche e non deterministiche e 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
eX
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
eX
come uguale. Le raccolte non deterministiche sono senza distinzione tra maiuscole e minuscole (CI) e insensibile all'accento (AI).
Nella tabella seguente sono riportate alcune differenze di comportamento tra Babelfish e PostgreSQL quando si utilizzano le regole di confronto non deterministiche.
Babelfish | PostgreSQL |
---|---|
Supporta la clausola LIKE per le regole di confronto CI_AS. |
Non supporta la clausola LIKE sulle regole di confronto non deterministiche. |
Babelfish non supporta la clausola |
|
Le operazioni di corrispondenza di modelli su regole di confronto non deterministiche non sono supportate. |
Per un elenco di altre limitazioni e differenze di comportamento per Babelfish rispetto a SQL Server e PostgreSQL, consulta Limitazioni di regole di confronto e differenze di comportamento.
Babelfish e SQL Server seguono una convenzione di denominazione per le raccolte che descrivono gli attributi di raccolta, come illustrato nella tabella seguente.
Attributo | Descrizione |
---|---|
Intelligenza artificiale |
Insensibile all'accento. |
AS |
sensibile agli accenti. |
BIN2 |
BIN2 richiede che i dati siano ordinati in ordine di codice. L'ordine dei punti di codice Unicode è lo stesso ordine di caratteri per le codifiche UTF-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, utilizzare una raccolta 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 libreria ICU supporta le preferenze maiuscole con La PREF può essere applicata solo a raccolte deterministiche |
Regole di confronto supportate da 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 tra maiuscole e minuscole e l'operatore LIKE. |
bbf_unicode_cp1_ci_as |
Raccolta non deterministica |
bbf_unicode_CP1250_ci_as |
Raccolta non deterministica |
bbf_unicode_CP1251_ci_as |
Raccolta non deterministica |
bbf_unicode_cp1253_ci_as |
Raccolta non deterministica |
bbf_unicode_cp1254_ci_as |
Raccolta non deterministica |
bbf_unicode_cp1255_ci_as |
Raccolta non deterministica |
bbf_unicode_cp1256_ci_as |
Raccolta non deterministica |
bbf_unicode_cp1257_ci_as |
Raccolta non deterministica |
bbf_unicode_cp1258_ci_as |
Raccolta non deterministica |
bbf_unicode_cp874_ci_as |
Raccolta non deterministica |
sql_latin1_general_cp1250_ci_as |
Codifica di caratteri a byte singolo non deterministico |
sql_latin1_general_cp1251_ci_as |
Raccolta non deterministica |
SQL_Latin1_General_CP1_CI_AS (default) |
Raccolta non deterministica |
sql_latin1_general_cp1253_ci_as |
Raccolta non deterministica |
sql_latin1_general_cp1254_ci_as |
Raccolta non deterministica |
sql_latin1_general_cp1255_ci_as |
Raccolta non deterministica |
sql_latin1_general_cp1256_ci_as |
Raccolta non deterministica |
sql_latin1_general_cp1257_ci_as |
Raccolta non deterministica |
sql_latin1_general_cp1258_ci_as |
Raccolta non deterministica |
chinese_PRC_CI_AS |
Raccolta non deterministica che supporta il cinese (RPC). |
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, Arabic_CI_AI |
Cinese |
Chinese_cs_as |
Chinese_ci_as, cinese_ci_ai |
Cyrillic_General |
Cyrillic_general_cs_as |
Cyrillic_general_CI_AS, Cyrillic_general_CI_AI |
Estone |
Estonian_cs_as |
Estonian_CI_AS, Estonian_CI_AI |
Finnish_Swedish |
Finnish_Swedish_CS_AS |
Finnish_Swedish_CI_AS, Finnish_Swedish_CI_AI |
Francese |
French_CS_AS |
French_CI_AS, French_CI_AI |
Greco |
Greek_CS_AS |
Greek_CS_AS, Greek_CI_AI |
Ebraico |
Hebrew_CS_AS |
Hebrew_CI_AS, Hebrew_CI_AI |
Giapponese (Babelfish 2.1.0 e versioni successive) |
Japanese_CS_AS | Japanese_CI_AI, Japanese_CI_AS |
Korean_Wamsung |
Korean_Wamsung_CS_AS |
Korean_Wamsung_CI_AS, Korean_Wamsung_CI_AI |
Modern_Spanish |
Modern_Spanish_CS_AS |
Modern_Spanish_CI_AS, Modern_Spanish_CI_AI |
Mongolo |
Mongolian_CS_AS |
Mongolian_CI_AS, Mongolian_CI_AI |
Polacco |
Polish_CS_AS |
Polish_CI_AS, Polish_CI_AI |
Thai |
Thai_CS_AS |
Thai_CI_AS, Thai_CI_AI |
Traditional_Spanish |
Traditional_Spanish_CS_AS |
Traditional_Spanish_CI_AS, Traditional_Spanish_CI_AI |
Turco |
Turkish_CS_AS |
Turkish_CI_AS, Turkish_CI_AI |
Ucraino |
Ukranian_CS_AS |
Ukranian_CI_AS, Ukranian_CI_AI |
Vietnamita |
Vietnamese_CS_AS |
Vietnamese_CI_AS, Vietnamese_CI_AI |
Regola di confronto predefinita 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 oggetti T-SQL del set di dati con la regola di confronto senza distinzione tra maiuscole e minuscole. A partire da Babelfish 2.3.0, la regola di confronto predefinita per i tipi di dati di regola di confronto (eccetto TEXT e NTEXT) è uguale alla regola di confronto del 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.