Firebird Documentation Index → Firebird 2.5 リリースノート → 国際言語のサポート(INTL) → その他の改善点 |
introducer構文、つまり、キャラクタ・セット名にアンダースコアを前置することにより、それに続くリテラルなテキストを強制的にそのキャラクタ・セットに変換させる手法を用いた場合、一つのSQL文が複数のキャラクタ・セットを扱わざるをえない状況で、問題が起きることがありました。実際に起きる問題は、変換エラーや、不正な形式の文字列のエラー、または何らかの予期せぬ挙動を示すといったように、バージョンによって異なります。
二つの違った使用シーンで問題が起きるようです─
あるクエリがMON$STATEMENTSからselectを実行している時に、他のクエリがintroducer構文を使う場合
introducer構文がPSQLモジュールで使用された場合
このような問題を回避するため、リテラルな文字列をintroducerから渡されるASCIIキャラクタによる16進表現に変換できるようになりました。例えば、
select _dos850 '123áé456' from rdb$database
これが、次のように変換されます
select _dos850 X'313233A082343536' from rdb$database
gbakユーティリティ・コードに新しいリストア・スイッチが追加され、影響を受けたデータベースのバックアップをリストアし、不正な形式のUNICODE_FSSデータやメタデータを修正できるようになりました。詳細は、ユーティリティの章のgbakの節をを参照して下さい。
トラッカー・リファレンス CORE-1945
UNICODEコレーション向けに、数値のソート用オーダーを指定するカスタム属性NUMERIC-SORTが使えるようになりました。
フォーマットと使用法
NUMERIC-SORT={0 | 1}
デフォルト値は0で、数値もアルファベットのオーダーでソートされます。例えば:
1 10 100 2 20
値を1に設定すると、数値のオーダーでソートされます。例えば:
1 2 10 20 100
例
create collation unicode_num for utf8 from unicode 'NUMERIC-SORT=1';
トラッカー・リファレンス CORE-2636
GB18030は、中国国内のソフトウェアに必須の言語・キャラクタをサポートする中国語の国家規格です。ICUからアクティベートされています。
Firebird Documentation Index → Firebird 2.5 リリースノート → 国際言語のサポート(INTL) → その他の改善点 |