私はデータベースを持っており、データベースのデフォルトエンコーディングを知る必要があります。私はコマンドラインからそれを取得したい。 psql
内からPostgresデータベースのエンコーディングを取得する
psql my_database -c 'SHOW SERVER_ENCODING'
、SQLのIDEまたはAPI:コマンドラインから
私はデータベースを持っており、データベースのデフォルトエンコーディングを知る必要があります。私はコマンドラインからそれを取得したい。 psql
内からPostgresデータベースのエンコーディングを取得する
psql my_database -c 'SHOW SERVER_ENCODING'
、SQLのIDEまたはAPI:コマンドラインから
SHOW SERVER_ENCODING
データベースのエンコーディングを取得したい場合:
psql -U postgres -h somehost --list
List of databases
Name | Owner | Encoding
------------------------+----------+----------
db1 | postgres | UTF8
プログラムで解決:
SELECT pg_encoding_to_char(encoding) FROM pg_database WHERE datname = 'yourdb';
方法1:のようなもの
すでにこれだけをコピーして貼り付け、DBサーバにログインしている場合。
SHOW SERVER_ENCODING;
結果:すでにログインしている場合は、使用し、このリストを取得するに基づいて、結果
再び:2
SHOW CLIENT_ENCODING;
方法:クライアントのエンコーディングについては
server_encoding
-----------------
UTF8
\l
SELECT character_set_name
FROM information_schema.character_sets
;
information_schema
すべてのデータベース/カタログにSQL-standard schemainformation_schema
存在から、character_sets
という名前の定義されたビューを使用します。このアプローチは、all standard database systemsに移植可能である必要があります。
SELECT *
FROM information_schema.character_sets
;
名前が複数でも、現在のデータベース/カタログを報告する単一の行のみを表示します。
3列目はcharacter_set_name
です:文字セットの
名は、現在のデータベースのエンコーディングの名前を示すとして実装
つ以上の方法にありますのでスキンケア:
psql -l
すべてのデータベース名、エンコーディングなどを表示します。
Questionで質問されているデータベース/カタログレベルの設定ではなく、サーバーレベルの設定(新しく作成されたデータベースで使用されるデフォルト)ですか? –