SQLiteからMySQLに単一行をインポートしますか?

SQLiteからMySQLに単一行をインポートしますか?

SQLite 3データベースからMySQLデータベースに何らかの増分インポート操作を続ける必要があります。列名は両方のデータベースで同じです。スクリプトを介してこれを行うための良い方法はありますか? (実際に使用できるように、行の列の値を一種の配列/リストにインポートする良い方法はありますか?)またはSmallを使用する方が良いでしょうか? Cプログラム?

アップデート:いいですね。 1行に1つの列値を提供する-lineオプションがあり、結果行は空行に分かれています。まだそれを解析する非常に簡単な方法を見つける必要があります;-)

答え1

#!/bin/bash

sqlite test.db  "select * from tablename" > /tmp/dump.sql

mysql -uroot -ppassword  databasename <<EOF
load data infile '/tmp/dump.sql'
into table tablename
fields terminated by '|'
escaped by '\\\'
lines terminated by '\n';
EOF

答え2

私はアダプタを使ってPHPでこれを書いて、私たちがしたことはインポートされたもの(または失敗したもの)を示すためにsys_parsedフラグを作成することでした。デフォルトでは機能しないインポートを試みないように追跡します。

何千ものsqliteファイルを解析して、顧客ごとに1つのテーブルを持つ単一のmysqlデータベースにインポートします。しかし、確かに15号線ではありません。信頼できる輸入品が必要な場合は、もっとやるべきことがあります。性能もかなり良く、負荷もそれほど重くはありません。

興味があれば、一度見て共有できるかどうかを確認できます(クライアント用に書かれています)。

関連情報