• ベストアンサー

postgresqlとmysqlの違い

こんにちは。 OSはRedhatLinux7.1を使っています。 Apache_1.3.26 php-4.2.1 PostgreSQL-7.2.1 mysql-3.23.52 を使ってWebアプリケーションを作ろうとしています。 Apache+php+PostgreSQLで、 SJISで書いたphpプログラム(htmlのページの表示もSJISに指定)を使って表示されたページからPostgreSQLにデータを登録しようとするとエラーになります。 Warning: pg_exec() query failed: ERROR: Invalid EUC_JP character sequence found (0x8971) となります。 同じようにApache+php+mysqlでやってみたら登録できます。 PostgreSQLはSJISでデータを登録できないのでしょうか? どこをどのようにすればいいのかわかりません。 初歩的で申し訳ありませんがアドバイスお願いします。

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

  • ベストアンサー
  • jakarta
  • ベストアンサー率38% (607/1597)
回答No.1

http://osb.sra.co.jp/PostgreSQL/Manual/PostgreSQL-7.1-ja/multibyte.html Table 5-1. Postgres(文字エンコーディング設定)を見るとEUC_JPにしか対応してないようですね。 参考URLにPostgreSQL7.1日本語マニュアルのURLをいれておきます。 何か疑問に思うことがあれば必ず役に立つと思います。

参考URL:
http://osb.sra.co.jp/PostgreSQL/Manual/
emitika
質問者

お礼

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

その他の回答 (1)

  • MovingWalk
  • ベストアンサー率43% (2233/5098)
回答No.2

SJISでデータについては、「自動エンコーディング変換」という機能があるようです。 #1の方の紹介サイト http://osb.sra.co.jp/PostgreSQL/Manual/PostgreSQL-7.1-ja/multibyte.html の5.2.3のところをご覧下さい。 両者の比較についてはとりあえずこちらを。 http://www.fukumi.co.jp/tips/postgresql.htm 日経バイト2002.10 p.167に比較記事がありますので機会があればお読みください。 このなかでの要点は、「速度のMySQL、機能のPostgreSQL」ということです。 MySQLの機能が不足している点として、サブクエリ、ストアドプロシジャに対応していない点が 上げられています。 Webサイトで利用する場合は、MySQLの方がいいのかもしれませんね。

emitika
質問者

お礼

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