• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQLiteからMySQLへの変換方法)

SQLiteからMySQLへの変換方法

このQ&Aのポイント
  • PHPとSQLiteを使用して運営しているサイトのデータベースをMySQLに変換する方法について教えてください。
  • SQLiteのデータの文字コードはUTF-8で、MySQLではEUC-JPにしたいと考えています。変換方法を教えてください。
  • MySQLからSQLiteに戻す方法もあれば教えてください。

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

  • ベストアンサー
  • hrm_mmm
  • ベストアンサー率63% (292/459)
回答No.1

phpで、SQLiteのデータを読み込んで、文字コード変換してtsvファイルに書き出し、 MySQLへは、 load local infile 文でtsvファイルからデータ取り込みすれば、いけるでしょう。 ただし、SQLiteは、カラム型がいいかげんで、intってしていても、文字列を格納することができてしまうので、MySQLのカラムに格納する上でのデータ不整合がないかチェックした上で、tsvファイルに書き出さないと、エラー続出で、取り込めないことがあります。 というわけで、一般化は無理なので、それぞれのtable構造に従って、自分で上記のことを行うプログラムを書くことになるかと。 MySQLから、SQLiteへも、おおむね同じく MySQLのデータをphpで読み出して、文字コードを適宜変換してからtsvファイルに書き出し、SQLite2.8 ならcopy コマンドで、tsvファイルを取り込み出来ます。 どちらのデータベースも、csvよりは、tsvの方がdefault設定で取り込み出来ます。

noname#87522
質問者

お礼

ありがとうございます。助かりました。 その方法で試してみたいと思います。