- 締切済み
エラーと改行について
「PostgreSQL」カテゴリと迷ったのですが、こちらに書込みをさせて いただきます。 まだPHPもPostgreSQLもやり始めたばかりの頃に、ShiftJISでDBを作成 したのですが、Accessでのデータ操作が出来るようにEUCでDBを作り 直し、そちらにデータを移行する作業を行っています。 一旦CSVファイルにDBの内容を出力し、新しいDBにデータを書き込むと いう手順で行っているのですが、その際に 「Warning: PostgreSQL query failed: ERROR: Invalid EUC_JP character sequence found (0xa12c) in ~」 というエラーが発生し、一部のデータが書き込まれません。また、改行 部分が無効になっています。(書込み部分で「<BR>に変換したものを「\n」に 変換しています。) 色々と調べていますが、今ひとつ原因がつかめません。どなたか解決法を お教えください。よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- cybert
- ベストアンサー率56% (18/32)
回答No.1
>一部のデータが書き込まれません どんなデータですか? DBはEUCのようですが、Insertする値をEUCでエンコードかけてますか? エラーから推測するに、EUC-JPの範囲外の文字コードがあるようです。 改行はよく分かりません。
補足
抽出したCSVファイルをTeraPadで開いて、 「文字コード指定保存」でEUC保存しているのですが、 それだと不十分なのでしょうか? PHPのスクリプト内で 「読み込み→エンコード→別ファイルに保存」 とかしたほうがいいのでしょうか?