2 つの主な落とし穴を指摘します。
まず、データベースが utf-8 として正しくインストールされていることを確認してください。一部のデータベースでは、インストール時にこれを選択する必要があり、他のデータベースではスキーマ/ユーザーの作成時に選択する必要があります。
次に、使用するプログラミング言語が utf-8 をサポートしていることを確認してください。php は、文字列操作と utf-8 で問題を引き起こすことが特に知られています。
firebird の create database ステートメントは次のようになります。
utf-8 をサポートする最初のバージョンである、少なくともバージョン 2.0 の firebird を使用していることを確認してください。
CREATE DATABASE <database>
USER <username>
PASSWORD <password>
PAGE_SIZE <pagesize>
DEFAULT CHARACTER SET UTF8
または、単一のフィールドを作成することもできます
CREATE TABLE money (
SYMBOL VARCHAR(50) CHARACTER SET UTF8 )
編集:何を保存するかを明確にするために、画面に表示される文字を正確に保存します。ほとんどの場合、任意のプログラムからデータベースまたは SQL ステートメント内にカット アンド ペーストできます。int/hex/oct/ascii への変換をいじる必要はまったくありません。
Edit2:もちろん、完全にフォーマットされた数値を保存するのではなく、単一の通貨記号のみを保存します。