2

PostgreSQL の文字セットと照合に問題があります。新しいデータベースをセットアップするとき、照合順序と文字タイプを C、Greek_Greece.1253、および POSIX から選択できます。エンコーディングには UTF8 を選択し、charset/collat​​ion には Greek_Greece.1253 を選択し、ADO 接続 (Devart プロバイダー) を使用していくつかのギリシャ文字を入力します。

ADOを使用して選択を行うと、期待していたデータ(ギリシャ語)が得られませんが、代わりに奇妙な文字が表示されます(予想以上に得られると思います)。

照合順序と文字タイプを、Greek_Greece.UTF-8 などの UTF-8 に近いものに変更しようとしていましたが、pgAdmin では使用できず、許可されていません。

私のセットアップはWindowsにあります。UTF-8を文字セットタイプで選択できるようにする方法や、より良い方法でデータを取得する方法はありますか?

4

2 に答える 2

2

お使いの OS は、UTF-8 でのギリシャ語照合をサポートしていないようです。

次のクエリを使用して、PostgreSQL で使用可能なすべての照合順序を表示できます。

select * from pg_collation;

ギリシャ語はel_GR.utf8. リストされている場合は、次のクエリを使用してデータベースを作成します。

CREATE DATABASE greek WITH ENCODING 'UTF-8' LC_COLLATE='el_GR.utf8' LC_CTYPE='el_GR.utf8' TEMPLATE=template0;

リストされていない場合は、OS レベルで言語サポートを追加する必要があります。

私は Windows にあまり詳しくありませんが、記憶から、コントロール パネルに言語を追加する方法があります (ただし、これにより UTF-8 サポートが追加されるかどうかはわかりません)。

Debian Linux ではとても簡単です:

$ dpkg-reconfigure locales

いずれにせよ、データベース内で Windows-1253 エンコーディングを使用しないことを強くお勧めします。経験上、utf8 以外のデータは今後大きな問題を引き起こします...

于 2013-07-11T15:00:31.323 に答える
0

dotConnect for PostgreSQL 接続文字列には、Unicode パラメーターが含まれています。True に設定してみてください。

于 2013-07-12T09:13:19.987 に答える