0


SQLite3 データベース内で SQL ファイル (MySQL データベースからのダンプ ファイル) を実行しようとしています。私が直面している問題は、ダンプ ファイルに SQLite3 で処理されない複数の挿入があることです。次に例を示します。

INSERT INTO resultset_values (id, o_id, points, descrip, created, createdby, up, upby) 
VALUES 
(1,1,1,'string1','2011-03-29 11:21:00','user1',NULL,NULL),
(2,1,2,'string2','2011-03-29 11:21:00','user1',NULL,NULL);

これは MySQL では正常に機能しますが、SQLite3 では機能しません。誰かが SQLite3 で複数の挿入を行う方法を知っていますか? 私のデータベースはかなり大きいので、上記の例は問題を説明するためのものです。

4

1 に答える 1

0

これはここで回答されています: SQLite データベースで一度に複数の行を挿入することは可能ですか?

どうやら、この構文は SQLite ではサポートされていません

あなたは回さなければなりません

INSERT INTO resultset_values (id, o_id, points, descrip, created, createdby, up, upby) 
VALUES 
(1,1,1,'string1','2011-03-29 11:21:00','user1',NULL,NULL),
(2,1,2,'string2','2011-03-29 11:21:00','user1',NULL,NULL);

の中へ:

INSERT INTO resultset_values (id, o_id, points, descrip, created, createdby, up, upby) 
VALUES 
(1,1,1,'string1','2011-03-29 11:21:00','user1',NULL,NULL);
INSERT INTO resultset_values (id, o_id, points, descrip, created, createdby, up, upby) 
VALUES 
(2,1,2,'string2','2011-03-29 11:21:00','user1',NULL,NULL);

お気に入りの Regex 対応テキスト エディターでそれを行うことができるはずです。

アップデート

それを次の形式に変換することもできます。

INSERT INTO resultset_values
      SELECT 1,1,1,'string1','2011-03-29 11:21:00','user1',NULL,NULL
UNION SELECT 2,1,2,'string2','2011-03-29 11:21:00','user1',NULL,NULL
UNION ...

しかし、個人的には、最初に提示したオプションを使用すると、作業が少なくなると思います。

于 2011-08-25T15:12:45.640 に答える