- ベストアンサー
文字エンコーディングをEUC_JPにする
データベースの文字エンコーディングがEUC_JPになっていないので,EUC_JPにしたいのですが,どのファイルのどの部分をどのように変えればいいのかわかりません。 ウインドーズのODBCドライバがEUC_JPに対応しているようなので,そのように変えたいのですが。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
DB作り直すしかないんじゃないかなぁ・・・・。OSは何? ALTER DATABSEは無かった感じ。CREATE DATABASE文で文字エンコーディングを指定できるのでpg_dumpでDBのバックアップを取ってdrop dabataseしてエンコーディング指定でcreate databaseしてpsqlでリストアすれば良いんじゃないかな。 ところで、postgresqlにはサーバ(データベース)文字エンコーディングとクライアントエンコーディングがあって、Windows用の日本語対応ODBCドライバはサーバエンコーディングEUC-JPまたはLatin固定でクライアントエンコーディングがSJISなような気がする。正確ではないけど。
その他の回答 (2)
- kamkamkam3
- ベストアンサー率42% (216/514)
WindowsでつかうならWINと文字コードを設定すればよいです。 以下サイトはPostgresqlの文字コード一覧です。
補足
下記の皆様も含め,ご回答ありがとうございました。締め切ります。
- kamkamkam3
- ベストアンサー率42% (216/514)
最初に、initdbコマンドを打つときに initdb -E EUC_JP とすれば、全部のデータベースがEUC_JPになります。 また、データベースを作成する際 CREATE DATABASE データベース名 -E EUC_JP でそのデータベースはEUC_JPになります。 postgresqlをcygwin(Windows上)で動かしているなら文字コードの部分をWINとすればShift_JISになったとおもいます。 自分も昔やったことなのでハッキリ覚えてませんが。。
補足
osはfedoracoreです。Win対応のODBCドライバを使って,VBからアクセスしてます。