RDS 適用於 EBCDIC和其他大型主機遷移的 PostgreSQL 定序 - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

RDS 適用於 EBCDIC和其他大型主機遷移的 PostgreSQL 定序

RDS 適用於 PostgreSQL 第 10 版及更新版本包括 60.2 ICU版,其以 Unicode 10.0 為基礎,並包含來自 Unicode Common Locale Data Repository 第 32 CLDR 版的定序。這些軟體國際化程式庫可確保字元編碼以一致的方式呈現,不論作業系統或平台為何。如需 Unicode CLDR-32 的詳細資訊,請參閱 Unicode CLDR網站上的 CLDR 32 版本備註。您可以在技術委員會 (-TCICU) 網站進一步了解 Unicode () 的國際化元件。 ICU ICU如需 ICU-60 的詳細資訊,請參閱下載 ICU 60

從 14.3 版開始, RDS for PostgreSQL 也包含協助資料整合和從 EBCDIC型系統轉換的定序。延伸的二進位編碼小數交換碼或EBCDIC編碼通常由大型主機作業系統使用。這些 Amazon RDS提供的定序經過嚴格定義,僅排序直接映射至EBCDIC程式碼頁面的 Unicode 字元。這些字元會依EBCDIC程式碼點順序排序,以便在轉換後進行資料驗證。這些定序不包含非標準化表單,也不包含不會直接對應至來源EBCDIC碼頁面上字元的 Unicode 字元。

EBCDIC 程式碼頁面和 Unicode 程式碼點之間的字元映射,是以 發佈的資料表為基礎IBM。整組可從 IBM做為壓縮檔案下載。 RDS for PostgreSQL 將這些映射與 提供的工具搭配使用ICU,以建立本節資料表中列出的定序。定序名稱包含 所需的語言和國家/地區ICU。不過,EBCDIC程式碼頁面不會指定語言,有些EBCDIC程式碼頁面涵蓋多個國家/地區。這表示資料表中定序名稱的語言和國家/地區部分是任意的,而且不需要與目前的地區設定相符。換句話說,字碼頁編號是此表格中定序名稱最重要的部分。您可以在任何 RDS for PostgreSQL 資料庫中使用下表中列出的任何定序。

  • Unicode to EBCDIC collations table – 有些大型主機資料遷移工具會在內部使用 LATIN1或 LATIN9來編碼和處理資料。這類工具使用往返結構描述來保留資料完整性並支援反向轉換。此資料表中的定序可由使用LATIN1編碼處理資料的工具使用,這不需要特殊處理。

  • Unicode to LATIN9 collations table – 您可以在任何 RDS for PostgreSQL 資料庫使用這些定序。

在下表中,您會在 RDS for PostgreSQL 中找到可用定序,將EBCDIC程式碼頁面映射至 Unicode 程式碼點。我們建議您使用此資料表中的定序進行應用程式開發,而這些應用程式開發需要根據IBM程式碼頁面的順序進行排序。

PostgreSQL 定序名稱 字碼頁對應和排序順序的說明

da-DK-cp277-x-icu

直接映射到IBMEBCDIC程式碼頁面 277 (每個轉換資料表) 的 Unicode 字元會依 IBM CP 277 程式碼點順序排序

de-DE-cp273-x-icu

直接映射至IBMEBCDIC程式碼頁面 273 (每個轉換資料表) 的 Unicode 字元會依 IBM CP 273 程式碼點順序排序

en-GB-cp285-x-icu

直接映射到IBMEBCDIC程式碼頁面 285 (每個轉換資料表) 的 Unicode 字元會依 IBM CP 285 程式碼點順序排序

en-US-cp037-x-icu

直接映射到IBMEBCDIC程式碼頁面 037 (每個轉換資料表) 的 Unicode 字元會依 IBM CP 37 程式碼點順序排序

es-ES-cp284-x-icu

直接映射到IBMEBCDIC程式碼頁面 284 (每個轉換資料表) 的 Unicode 字元會依 IBM CP 284 程式碼點順序排序

fi-FI-cp278-x-icu

直接映射到IBMEBCDIC程式碼頁面 278 (每個轉換資料表) 的 Unicode 字元會依 IBM CP 278 程式碼點順序排序

fr-FR-cp297-x-icu

直接映射到IBMEBCDIC程式碼頁面 297 (每個轉換資料表) 的 Unicode 字元會依 IBM CP 297 程式碼點順序排序

it-IT-cp280-x-icu

直接映射到IBMEBCDIC程式碼頁面 280 (每個轉換資料表) 的 Unicode 字元會依 IBM CP 280 程式碼點順序排序

nl-BE-cp500-x-icu

直接映射到IBMEBCDIC程式碼頁面 500 (每個轉換資料表) 的 Unicode 字元會依 IBM CP 500 程式碼點順序排序

Amazon RDS提供一組額外的定序,根據來源資料的程式碼頁面IBM,根據原始程式碼點的順序,使用 發佈的資料表來排序映射至LATIN9字元的 Unicode EBCDIC程式碼點。

PostgreSQL 定序名稱 字碼頁對應和排序順序的說明

da-DK-cp1142m-x-icu

對應至原始從IBMEBCDIC程式碼頁面 1142 轉換LATIN9之字元的 Unicode 字元 (每個轉換資料表) 會依 IBM CP 1142 程式碼點順序排序

de-DE-cp1141m-x-icu

映射到原始從IBMEBCDIC程式碼頁面 1141 轉換LATIN9的字元的 Unicode 字元 (每個轉換資料表) 會依 IBM CP 1141 程式碼點順序排序

en-GB-cp1146m-x-icu

映射到原始從IBMEBCDIC程式碼頁面 1146 轉換LATIN9的字元的 Unicode 字元 (每個轉換資料表) 會依 IBM CP 1146 程式碼點順序排序

en-US-cp1140m-x-icu

映射到原始從IBMEBCDIC程式碼頁面 1140 轉換LATIN9的字元的 Unicode 字元 (每個轉換資料表) 會依 IBM CP 1140 程式碼點順序排序

es-ES-cp1145m-x-icu

映射到原始從IBMEBCDIC程式碼頁面 1145 轉換LATIN9的字元的 Unicode 字元 (每個轉換資料表) 會依 IBM CP 1145 程式碼點順序排序

fi-FI-cp1143m-x-icu

對應至原始從IBMEBCDIC程式碼頁 1143 轉換LATIN9之字元的 Unicode 字元 (每個轉換資料表) 會依 IBM CP 1143 程式碼點順序排序

fr-FR-cp1147m-x-icu

對應至原始從IBMEBCDIC程式碼頁面 1147 轉換LATIN9之字元的 Unicode 字元 (每個轉換資料表) 會依 IBM CP 1147 程式碼點順序排序

it-IT-cp1144m-x-icu

映射到原始從IBMEBCDIC程式碼頁面 1144 轉換LATIN9的字元的 Unicode 字元 (每個轉換資料表) 會依 IBM CP 1144 程式碼點順序排序

nl-BE-cp1148m-x-icu

映射到原始從IBMEBCDIC程式碼頁面 1148 轉換LATIN9的字元的 Unicode 字元 (每個轉換資料表) 會依 IBM CP 1148 程式碼點順序排序

在以下,您可以找到使用 RDS for 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

我們建議您使用 和 Unicode to EBCDIC collations table 中的定序Unicode to LATIN9 collations table進行應用程式開發,這些開發需要根據IBM程式碼頁面的順序進行排序。下列定序 (尾碼為字母「b」) 也可見於 pg_collation,但主要主機資料整合和遷移工具可在 AWS 具有特定程式碼點位移的對應程式碼頁面使用,且需要在定序中特殊處理。換言之,不建議使用下列定序。

  • 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

若要進一步了解如何將應用程式從大型主機環境遷移至 AWS,請參閱什麼是 AWS 大型主機現代化?

如需在 Postgre 中管理定序的詳細資訊SQL,請參閱 PostgreSQL 文件中的定序支援