在MySQL中我会使用
INSERT INTO `mytable` (`col1`, `col2`) VALUES
(1, 'aaa'),
(2, 'bbb');
但这会导致在SQLite的错误。 什么是SQLite的正确的语法?
在MySQL中我会使用
INSERT INTO `mytable` (`col1`, `col2`) VALUES
(1, 'aaa'),
(2, 'bbb');
但这会导致在SQLite的错误。 什么是SQLite的正确的语法?
这之前已经在这里找到答案: 是否有可能在SQLite数据库一次插入多行?
要回答OMG小马回答您的评论:
由于3.7.11版本的SQLite不支持多行插入。 理查德·希普评论:
"The new multi-valued insert is merely syntactic suger (sic) for the compound insert.
There is no performance advantage one way or the other."
使用UNION:
INSERT INTO `mytable`
(`col1`, `col2`)
SELECT 1, 'aaa'
UNION ALL
SELECT 2, 'bbb'
UNION ALL
比快UNION
,因为UNION
消除重复- UNION ALL
没有。
从2012-03-20版本(3.7.11)开始时,SQLite支持以下插入语句:
INSERT INTO 'tablename' ('column1', 'column2') VALUES
('data1', 'data2'),
('data3', 'data4'),
('data5', 'data6'),
('data7', 'data8');
阅读文档: http://www.sqlite.org/lang_insert.html