重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

デフォルトのEUCでインストールしていますが、
これをシフトJISで再構築したいと思っています。

configureのオプションで指定して再インストールするのか、
インストール後の設定ファイルを使って再構築するのか、
再構築の際はinitdbを再度する必要があるのか注意点があれば
教えて下さい。

シフトJISでデータベースを管理したいと思っている
のですが、アドバイスを頂けると助かります。

お客様の要望でシフトJISで印刷するようなケースがあり、
EUCコードにこだわっているだけでは解決できないので、
困っているところです。よろしくお願いします。

プログラム環境の方ですが、PHPの設定ファイルは調査した
ので、大丈夫だと思います。

使っている環境ですが、
RHL9、postgreSQL7.4.2、PHP4.3.8
になります。

A 回答 (3件)

データベースの再構築をする必要は無いと思います。


環境変数の
PGCLIENTENCODING=SJIS
を定義するだけでいいと思います。これにより、EUC_JPで保存されたデータを取り出すときに自動的にシフトJISに変換されます。
    • good
    • 0
この回答へのお礼

なるほど!早速やってみます。ありがとうございました。

お礼日時:2007/03/04 13:05

#1のお礼をみての追加です。

携帯なら、UTF8はやめておいた方がいいですよ。理由はPostgreSQLでUTF8では外字がうまくあつかえないからです。たとえばドコモの絵文字がだめです。
    • good
    • 0

PostgreSQL って、クライアント側の SJIS はサポートしていますが、サーバ側の SJIS は現在でも対応していなかったように思いますけど。

(少なくとも 7.4.2 では対応していません)

SJIS の機種依存文字とかもできるだけ使いたいのであれば、UTF-8 で DB を構築されると良いかとお思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
調べてみると、サーバ側でのSJISはサポートしていませんでした。
しかし、EUCで構築し、シフトJISのデータを登録することは
可能でした。その場合、プログラム環境のPHPのphp.iniも
設定する必要がありますが、phpでブラウザ上で表示するときには
機種依存文字は表示されませんね。シフトJISでHTMLとして保存
固定で保存していれば表示されます。
ブラウザでは表示できなかったのですが、ファイルに保存して
ダウンロードさせる手法であれば、機種依存文字もダウンロード
後に、エクセル等のソフトで機種依存文字が問題なく扱うことが
できました。シフトJISに対する「こだわり」がお客様の要望と
してあるのですが、開発者にとってこれほど苦痛になるとは、
分かっていてもしんどいですよね。

また、別件で携帯端末にも開発を考えておりまして、
SSL対応でPHPとpostgreSQLでシステム構築を考えているのですが、
携帯端末の標準ブラウザがセキュリティコードの認識上、コード
判別ができずにシフトJISとして表示してしまう仕様があるため、
プログラム環境PHPもシフトJISとして構築する必要があるため、
UTF-8でDB構築する方法も検討する必要が出てくると思いますし、
しばらくテストサーバ機を使って試行錯誤でやってみます。

ありがとうございました。

お礼日時:2007/03/01 12:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す