0
通貨記号の列を作成し、それをUnicode値でbyteaとして保存しようとしましたが、実際の記号文字ではなく、生のコードとしてデータベースマネージャー(intellij)に表示されます。 これを行うには、どのような方法が適していますか?通貨記号をpostgresqlに保存する最も良い方法は何ですか?
通貨記号の列を作成し、それをUnicode値でbyteaとして保存しようとしましたが、実際の記号文字ではなく、生のコードとしてデータベースマネージャー(intellij)に表示されます。 これを行うには、どのような方法が適していますか?通貨記号をpostgresqlに保存する最も良い方法は何ですか?
私は、全体のポイントを欠場しなければならないCOS私だけでしょう:また、postgresの内部貨幣の種類を使用して最初に望んでいた、それは右に看板を置くため
x=# with utf(sign,currency) as (values(e'\u20BD','Rubble'),(e'\u20AC','Euro'),(e'\u20AF','Drachma'))
select *,pg_typeof(sign) from utf;
sign | currency | pg_typeof
------+----------+-----------
₽ | Rubble | text
€ | Euro | text
₯ | Drachma | text
(3 rows)
UTFコードは、https://www.w3schools.com/charsets/ref_utf_currency.asp
から撮影(金額の前または後の)場所が、ヒンディー語のロケールで失敗しました:
x=# set lc_monetary TO 'hi_IN';
ERROR: invalid value for parameter "lc_monetary": "hi_IN"
Time: 0.332 ms
x=# set lc_monetary TO 'EN_ie';
SET
Time: 0.514 ms
x=# select 1::money;
money
-------
€1.00
(1 row)
Time: 3.313 ms
x=# set lc_monetary TO 'RU_ru';
SET
Time: 10.178 ms
x=# select 1::money;
money
-----------
1,00 руб.
(1 row)
なぜテキストだけではない... –
を(例えば)ユーロ記号ではないので?あなたが文字列として挿入するだけで、それを取得したら正しく表示されません。 – sharon182
ASCIIテーブル?.. 'show server_encoding'?.. –