PostgreSQL ICU Support
ICU (International Components for Unicode) uses C/C++ and Java libraries to provide Unicode and Globalization internationalization and localization facilities, including collation. ICU provides stability to your database by preventing index corruption that is caused by operating system collation changes.
IBM Cloud® Databases for PostgreSQL supports ICU. To use ICU, your tables need to be created with ICU support, as outlined in the PostgreSQL Collation Support documentation.
ICU-based collations are offered alongside the libc
collations. libc
uses the locales that are provided by the operating system C library and the locales that most tools provided by the operating system use. Building
with ICU support does not remove libc
collation support. For more information, see PostgreSQL Collation Support.
For example, you might have used a command that looks like this.
CREATE TABLE ... (... x text COLLATE "en_US" ...)
,
You might now use a command like this.
CREATE TABLE ... (... x text COLLATE "en-x-icu" ...)