• ベストアンサー

文字エンコードの変更方法

Linuxサーバーで、PostgreSQLを使用したいのですが、 新しいデータベースを追加する際に、 文字エンコードがデフォルトでは「SQL_ASCII」になっているのを「EUC-JP」に変更したいのですが、どうすればいいのでしょうか? ちなみに、Pleskコントロールパネルは使えます。

質問者が選んだベストアンサー

  • ベストアンサー
  • moritan2
  • ベストアンサー率25% (168/670)
回答No.2

initdb を実行する時に -E EUC_JP を指定すればいいでしょう。 あるいは、インストール時に .configure のときに指定してもいいです。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • umota
  • ベストアンサー率46% (150/324)
回答No.1

> どうすればいいのでしょうか? マニュアルを読んで下さい。 VI. リファレンス  I. SQL コマンド   CREATE DATABASE

参考URL:
http://www.postgresql.jp/document/index.php3
mikichan-e
質問者

補足

マニュアルを、読んだんですけど、 これは、その都度、EUC-JPに変更するという意味でしょうか? また、コマンドが使えないサーバーなのですが、 その場合、どうすれば?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 文字コードエラー

    PostgreSQLを使用したいのですが、 新しいデータベースをサブホストドメインに対して付与及び、追加する際に、 文字エンコードがデフォルトでは「SQL_ASCII」になっているのを「EUC-JP」に変更したいのですが、どうすればいいのでしょうか?

  • エンコードSQL_ASCIIについて

    お世話になります。 無料サーバを借りたのですが postgreSQLのエンコードがSQL_ASCIIです。 日本語は通らないという理解でよいのでしょうか? なんとかする方法があったらご教授いただければ ありがたいです。 よろしくお願いいたします。

  • デフォルトのCLIENT_ENCODINGを変更したい

    データベース、またはPostgresql本体の CLIENT_ENCODING のデフォルトを設定するにはどうしたらよいでしょうか。 ご存知の方いらっしゃいましたら教えてください。 【現状】 Linux機にインストールしたPostgresqlのCLIENT_ENCODINGをSJISにしたいのですが、DBにconnectする毎に SET CLIENT_ENCODING 'SJIS'; することで対処していますが、出来ればソフト側ではなくDB側の設定で対処したいと考えています。 ■ デフォルト設定のWindowsとLinuxの差異 Windows:  サーバ:euc  CLIENT_ENCODING:sjis ※ Linux[centos4]:  サーバ:euc  CLIENT_ENCODING:euc ※ Windowsと同じ設定になるようにしたいです。   またはCREATEDBのオプションとかでそういうのがあると良いのですが。 PostgreSQLのversion:8.1.5

  • 文字エンコードの設定について

    前回、PHPからデータベースへの登録について質問させていただきました。 今回はデータベースに登録した情報をブラウザ上で呼び出す際の 文字エンコードの設定について質問させていただきます。 お手数おかけいたしますがよろしくお願い致します。 以下、一部は省略していますが動作環境とソースの内容です。     DBサーバー : EUC     Webサーバー : Shift_JIS 呼び出す側のPHP : EUC ▼ dataload.php **************************************************************************** <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=euc-jp" /> </head> <body> <?php ini_set("mbstring.internal_encoding", "eucjp"); ini_set("mbstring.http_output", "eucjp"); // データベースに接続 ~ 省略 ~ // データベースの選択 ~ 省略 ~ $str_sql = "select * from FORM_DATA"; $sql_re = mysql_query('SELECT * FROM FORM_DATA', $db); while ($data = mysql_fetch_array($sql_re)) { echo '<p>' . $data['DataNumber'] . ':' . $data['Time'] . ':' . $data['Name'] . ':' . $data['Email'] . ':' . $data['Area'] . ':' . $data['Sex'] . ':' . $data['Interest'] . ':' . $data['Comment'] . ':' . $data['OS'] . ':' . $data['IP'] . "</p>\n"; } #$rs = mysql_query($sql_re,$db); #if(!$rs) { # exit('<br /><br />Error! データの呼び出しに失敗しました。'); #} // データベース接続を閉じる $db = mysql_close($db); if (!$db) { exit('データベースとの接続を閉じれませんでした。'); } else{ print "データベースとの接続が切れました。<br />"; } ?> <br />登録データの呼び出し完了しました。<br /><br /> <a href="index.php">最初に戻る</a> </body> </html> ************************************************************************ PHPソースの内容は以上です。 動作的には問題なくDB内の情報が表示されます。 ただし、ブラウザの文字コードが「Shift_JIS」のまま切り替わらず、 ブラウザの文字エンコードを「EUC」に変更しなければ文字化けしてしまう状況です。 <meta>で文字コードを指定し、ini_set()でさらに「EUC」を指定してあるのですが アクセスした時点では文字コードは変わらず文字化けてしまいます。 ini_set("mbstring.internal_encoding", "eucjp"); ini_set("mbstring.http_output", "eucjp"); まだまだ勉強不足で根本的に抜けている点があるかもしれませんが、 可能なら解決策をご教授いただけますと助かります。 よろしくお願い致します。

    • 締切済み
    • PHP
  • Unicode文字エンコード(ASCIIまたはUTF-8)をEUCに変換する方法

    初めて質問します。よろしくお願いします。 LINUX上でTimesTenバルクコピー(OUT)したファイルを Sybaseにバルクコピー(IN)したいのですが バルクコピー(OUT)時に、日本語データが存在する場合 Unicode文字エンコードされて出力されます。 (出力例: \021\022\033 等) このままバルクコピー(IN)した場合、Sybase 上で正しく 表示できませんので、一度EUCコードに変換してから 実行しようと考えています。 Unicode文字エンコード(ASCIIまたはUTF-8)をEUCに変換する方法 ご教示願います。 ご回答よろしくお願いします。

  • 文字のエンコードの仕方

    お世話になります。 Excelで、Linuxマシンからテキストファイルを読み込むマクロを組みました。 ところが文字コードがEUC_JPのため文字化けしてしまいます。 VBAでEUC_JPをShift-JISにまたその逆を行う方法をご存知の方、ご教示ください。

  • gnome端末の文字コード

    linux CENTOS5.2を使っている者です。 linuxを最近インストールしました。 emacsの文字コードをEUC-JPに設定したので、端末の方もEUC-JPにしたいです。(プログラミングの練習をしたいので) 端末→文字コードの設定 でEUC-JPにできるのですが、 デフォルトがutf-8であるため、いちいち変えなくてはいけません。 どっかのファイルをいじってデフォルトの文字コードを変えることは出来ますか。

  • PHPの文字化け

    PHP4.3.2 Windows2000 PostgreSQL RedHat Linux DBから取得した値をCSVファイルに書き出します。 この時に日本語が文字化けをしてしまうのです。 php.iniの設定を変えれば、良いのでしょうか? 初歩的な質問で申し訳ありませんが、 よろしくお願いします。 php.iniの設定内容 default_charset = "SJIS" mbstring.language = Japanese mbstring.internal_encoding = eucJP-win mbstring.http_input = ASCII,JIS,Windows-31J,UTF-8,EUC-JP mbstring.http_output = Windows-31J mbstring.detect_order = ASCII,JIS,Windows-31J,UTF-8,EUC-JP mbstring.substitute_character = none DBの設定内容 List of databases Name | Owner | Encoding -----------+----------+---------- test | postgres | EUC_JP

    • ベストアンサー
    • PHP
  • pg_dumpの文字化け

    PostgreSQLのpg_dumpを用いたバックアップで困っています。 OSはVineLinux 2.2.17-0vl10です。 あるサーバ(PostgreSQL7.0.2)のデータベースtest_db(EUC_JP)に対して、 pg_dump -D -v -i -f test.dump test.db でダンプファイルを作成しました。 COPYでは不確実な場合があるということでINSERT文で出力しました。 (データの日本語の部分が数字に変換されています) それを別のサーバ(PostgreSQL8.2.5)のデータベースtest2_db(EUC_JP)にリストアしました。 psql test2_db < test.dump すると、"(株)"という文字を含む文字列が化けてしまっていました。 同じレコードの他のカラムは大丈夫です。 このような場合の対策がありましたら教えていただきたいと思います。 宜しくお願いします。

  • EUCとSJISの変換文字列のレコードへの書込みについて

    WindowsのサーバーでデータベースはMySQLです。今回、Linuxのサーバーからもダイレクトにデータを取得(SQLのselect文)しWindowsのサーバーへデータの書込みを行ったりLinux側へデータ書込みを行うことになりました。 そこでEUC,SJISの文字列変換なのですが、レコードセットなどSelect文でEUCのデータを取得するとSQLでエラーになったり正常に値が取得できません。NKF32でテキストファイル間では変換できるのですが、直接テーブルからデータを取得しEUCまたはSJIS変換をおこないSQLで書込みを行うことはやはりVBでは無理なのでしょうか。ご経験又は知識 をお持ちの方ご教示板だければ幸いです。