Regole di confronto RDS per PostgreSQL per EBCDIC e altre migrazioni di mainframe - Amazon Relational Database Service

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 RDS per PostgreSQL per EBCDIC e altre migrazioni di mainframe

RDS per PostgreSQL versione 10 e successive include la versione 60.2 di ICU, basata su Unicode 10.0 e include le regole di confronto tratte da Unicode Common Locale Data Repository, CLDR 32. Queste librerie di internazionalizzazione del software garantiscono la coerenza a livello di presentazione delle codifiche dei caratteri, indipendentemente dal sistema operativo o dalla piattaforma. Per ulteriori informazioni su Unicode CLDR-32, consulta la Nota di rilascio di CLDR 32 sul sito Web Unicode CLDR. Puoi saperne di più sui componenti di internazionalizzazione per Unicode (ICU) nel sito Web ICU Technical Committee (ICU-TC). Per informazioni su ICU-60, consulta la pagina Download ICU 60.

A partire dalla versione 14.3, RDS per PostgreSQL include anche regole di confronto che facilitano l'integrazione e la conversione dei dati dai sistemi basati su EBCDIC. Il codice di interscambio decimale con codice binario esteso codifica EBCDIC (Extended Binary Coded Decimal Interchange Code) è comunemente utilizzata dai sistemi operativi mainframe. Queste regole di confronto fornite da Amazon RDS sono definite in modo restrittivo per ordinare solo i caratteri Unicode mappati direttamente alle tabelle codici EBCDIC. I caratteri sono ordinati in base all'ordine dei punti di codice EBCDIC per consentire la convalida dei dati dopo la conversione. Queste regole di confronto non includono i moduli denormalizzati, né i caratteri Unicode non associati direttamente a un carattere nella tabella codici EBCDIC di origine.

Le mappature dei caratteri tra le tabelle codici EBCDIC e i punti di codice Unicode si basano su tabelle pubblicate da IBM. Il set completo è disponibile presso IBM come file compresso da scaricare. RDS per PostgreSQL ha utilizzato queste mappature con gli strumenti forniti da ICU per creare le regole di confronto elencate nelle tabelle di questa sezione. I nomi delle regole di confronto includono la lingua e il paese richiesti da ICU. Tuttavia, le tabelle codici EBCDIC non specificano le lingue e alcune tabelle codici EBCDIC coprono più paesi. Ciò significa che la parte relativa alla lingua e al paese dei nomi delle regole di confronto nella tabella è arbitraria e non deve necessariamente corrispondere alla lingua corrente. In altre parole, il numero della tabella codici è la parte più importante del nome della regola di confronto in questa tabella. È possibile utilizzare una qualsiasi delle regole di confronto elencate nelle tabelle seguenti in qualsiasi database RDS per PostgreSQL.

  • Unicode to EBCDIC collations table: alcuni strumenti di migrazione dei dati mainframe utilizzano internamente LATIN1 o LATIN9 per codificare ed elaborare i dati. Tali strumenti utilizzano schemi round trip per preservare l'integrità dei dati e supportare la conversione inversa. Le regole di confronto in questa tabella possono essere utilizzate da strumenti che elaborano i dati utilizzando la codifica LATIN1, che non richiede una gestione speciale.

  • Unicode to LATIN9 collations table: è possibile utilizzare queste regole di confronto in qualsiasi database RDS per PostgreSQL.

Nella tabella seguente sono disponibili le regole di confronto disponibili in RDS per PostgreSQL che mappano le tabelle codici EBCDIC ai punti di codice Unicode. Si consiglia di utilizzare le regole di confronto contenute in questa tabella per lo sviluppo di applicazioni che richiedono l'ordinamento in base all'ordine delle tabelle codici IBM.

Nome della regola di confronto PostgreSQL Descrizione della mappatura e dell'ordinamento delle tabelle codici

da-DK-cp277-x-icu

I caratteri Unicode mappati direttamente alla tabella codici IBM EBCDIC 277 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 277

de-DE-cp273-x-icu

I caratteri Unicode mappati direttamente alla tabella codici IBM EBCDIC 273 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 273

en-GB-cp285-x-icu

I caratteri Unicode mappati direttamente alla tabella codici IBM EBCDIC 285 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 285

en-US-cp037-x-icu

I caratteri Unicode mappati direttamente alla tabella codici IBM EBCDIC 037 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 37

es-ES-cp284-x-icu

I caratteri Unicode mappati direttamente alla tabella codici IBM EBCDIC 284 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 284

fi-FI-cp278-x-icu

I caratteri Unicode mappati direttamente alla tabella codici IBM EBCDIC 278 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 278

fr-FR-cp297-x-icu

I caratteri Unicode mappati direttamente alla tabella codici IBM EBCDIC 297 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 297

it-IT-cp280-x-icu

I caratteri Unicode mappati direttamente alla tabella codici IBM EBCDIC 280 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 280

nl-BE-cp500-x-icu

I caratteri Unicode mappati direttamente alla tabella codici IBM EBCDIC 500 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 500

Amazon RDS fornisce una serie di regole di confronto aggiuntive che ordinano i punti di codice Unicode mappati ai caratteri LATIN9 utilizzando le tabelle pubblicate da IBM, nell'ordine dei punti di codice originali in base alla tabella codici EBCDIC dei dati di origine.

Nome della regola di confronto PostgreSQL Descrizione della mappatura e dell'ordinamento delle tabelle codici

da-DK-cp1142m-x-icu

I caratteri Unicode mappati direttamente ai caratteri LATIN9 originariamente convertiti dalla tabella codici IBM EBCDIC 1142 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 1142

de-DE-cp1141m-x-icu

I caratteri Unicode mappati direttamente ai caratteri LATIN9 originariamente convertiti dalla tabella codici IBM EBCDIC 1141 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 1141

en-GB-cp1146m-x-icu

I caratteri Unicode mappati direttamente ai caratteri LATIN9 originariamente convertiti dalla tabella codici IBM EBCDIC 1146 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 1146

en-US-cp1140m-x-icu

I caratteri Unicode mappati direttamente ai caratteri LATIN9 originariamente convertiti dalla tabella codici IBM EBCDIC 1140 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 1140

es-ES-cp1145b-x-icu

I caratteri Unicode mappati direttamente ai caratteri LATIN9 originariamente convertiti dalla tabella codici IBM EBCDIC 1145 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 1145

fi-FI-cp1143m-x-icu

I caratteri Unicode mappati direttamente ai caratteri LATIN9 originariamente convertiti dalla tabella codici IBM EBCDIC 1143 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 1143

fr-FR-cp1147m-x-icu

I caratteri Unicode mappati direttamente ai caratteri LATIN9 originariamente convertiti dalla tabella codici IBM EBCDIC 1147 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 1147

it-IT-cp1144b-x-icu

I caratteri Unicode mappati direttamente ai caratteri LATIN9 originariamente convertiti dalla tabella codici IBM EBCDIC 1144 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 1144

nl-BE-cp1148m-x-icu

I caratteri Unicode mappati direttamente ai caratteri LATIN9 originariamente convertiti dalla tabella codici IBM EBCDIC 1148 (per tabelle di conversione) sono ordinati in base all'ordine dei punti di codice IBM CP 1148

Di seguito viene fornito un esempio di come utilizzare una regola di confronto RDS per PostgreSQL.

db1=> SELECT pg_import_system_collations('pg_catalog'); pg_import_system_collations ----------------------------- 36 db1=> SELECT '¤' < 'a' col1; col1 ------ t db1=> SELECT '¤' < 'a' COLLATE "da-DK-cp277-x-icu" col1; col1 ------ f

Si consiglia di utilizzare le regole di confronto contenute nella Unicode to EBCDIC collations table e nella Unicode to LATIN9 collations table per lo sviluppo di applicazioni che richiedono l'ordinamento in base all'ordine delle tabelle codici IBM. Le seguenti regole di confronto (con il suffisso "b") sono visibili anche in pg_collation, ma sono destinate all'uso da parte degli strumenti di integrazione e migrazione dei dati mainframe in AWS che mappano le tabelle codici con spostamenti specifici dei punti di codice e richiedono una gestione speciale a livello di regola di confronto. In altre parole, si sconsiglia l'utilizzo delle regole di confronto elencate di seguito.

  • da-DK-277b-x-icu

  • da-DK-1142b-x-icu

  • de-DE-cp273b-x-icu

  • de-DE-cp1141b-x-icu

  • en-GB-cp1146b-x-icu

  • en-GB-cp285b-x-icu

  • en-US-cp037b-x-icu

  • en-US-cp1140b-x-icu

  • es-ES-cp1145b-x-icu

  • es-ES-cp284b-x-icu

  • fi-FI-cp1143b-x-icu

  • fr-FR-cp1147b-x-icu

  • fr-FR-cp297b-x-icu

  • it-IT-cp1144b-x-icu

  • it-IT-cp280b-x-icu

  • nl-BE-cp1148b-x-icu

  • nl-BE-cp500b-x-icu

Per saperne di più sulla migrazione delle applicazioni da ambienti mainframe ad AWS, consulta la pagina relativa alla modernizzazione dei mainframe AWS.

Per ulteriori informazioni sulla gestione delle regole di confronto in PostgreSQL, consulta la pagina relativa al supporto delle regole di confronto nella documentazione di PostgreSQL.