質問 |
||
| QNo.2791554 | シフトJISでのDB再構築 | |
|---|---|---|
| 質問者:genxo2001 |
デフォルトのEUCでインストールしていますが、 これをシフトJISで再構築したいと思っています。 configureのオプションで指定して再インストールするのか、 インストール後の設定ファイルを使って再構築するのか、 再構築の際はinitdbを再度する必要があるのか注意点があれば 教えて下さい。 シフトJISでデータベースを管理したいと思っている のですが、アドバイスを頂けると助かります。 お客様の要望でシフトJISで印刷するようなケースがあり、 EUCコードにこだわっているだけでは解決できないので、 困っているところです。よろしくお願いします。 プログラム環境の方ですが、PHPの設定ファイルは調査した ので、大丈夫だと思います。 使っている環境ですが、 RHL9、postgreSQL7.4.2、PHP4.3.8 になります。 |
|
困り度:
|
||
| 質問投稿日時: 07/02/28 17:48 |
||
回答 |
|
| ANo.3 | #1のお礼をみての追加です。携帯なら、UTF8はやめておいた方がいいですよ。理由はPostgreSQLでUTF8では外字がうまくあつかえないからです。たとえばドコモの絵文字がだめです。 |
|---|---|
| 回答者:moritan2 | |
| 種類:回答 どんな人:経験者 自信:自信あり |
|
| 回答日時: 07/03/04 12:49 |
|
| |
| この回答へのお礼 | この回答にお礼をつける(質問者のみ) |
回答良回答20pt |
|
| ANo.2 | データベースの再構築をする必要は無いと思います。 環境変数の PGCLIENTENCODING=SJIS を定義するだけでいいと思います。これにより、EUC_JPで保存されたデータを取り出すときに自動的にシフトJISに変換されます。 |
|---|---|
| 回答者:moritan2 | |
| 種類:回答 どんな人:経験者 自信:自信あり |
|
| 回答日時: 07/03/04 12:36 |
|
| |
| この回答へのお礼 | なるほど!早速やってみます。ありがとうございました。 |
回答良回答10pt |
|
| ANo.1 | PostgreSQL って、クライアント側の SJIS はサポートしていますが、サーバ側の SJIS は現在でも対応していなかったように思いますけど。(少なくとも 7.4.2 では対応していません) SJIS の機種依存文字とかもできるだけ使いたいのであれば、UTF-8 で DB を構築されると良いかとお思います。 |
|---|---|
| 回答者:entree | |
| 種類:回答 どんな人:経験者 自信:自信あり |
|
| 回答日時: 07/03/01 11:19 |
|
| |
| この回答へのお礼 | 回答ありがとうございました。 調べてみると、サーバ側でのSJISはサポートしていませんでした。 しかし、EUCで構築し、シフトJISのデータを登録することは 可能でした。その場合、プログラム環境のPHPのphp.iniも 設定する必要がありますが、phpでブラウザ上で表示するときには 機種依存文字は表示されませんね。シフトJISでHTMLとして保存 固定で保存していれば表示されます。 ブラウザでは表示できなかったのですが、ファイルに保存して ダウンロードさせる手法であれば、機種依存文字もダウンロード 後に、エクセル等のソフトで機種依存文字が問題なく扱うことが できました。シフトJISに対する「こだわり」がお客様の要望と してあるのですが、開発者にとってこれほど苦痛になるとは、 分かっていてもしんどいですよね。 また、別件で携帯端末にも開発を考えておりまして、 SSL対応でPHPとpostgreSQLでシステム構築を考えているのですが、 携帯端末の標準ブラウザがセキュリティコードの認識上、コード 判別ができずにシフトJISとして表示してしまう仕様があるため、 プログラム環境PHPもシフトJISとして構築する必要があるため、 UTF-8でDB構築する方法も検討する必要が出てくると思いますし、 しばらくテストサーバ機を使って試行錯誤でやってみます。 ありがとうございました。 |