SQLite一条SQL语句插入多条记录

转自:http://blog.sina.com.cn/s/blog_589016320100uxzn.html 

为了减少数据库连接的I/O开销,一般会把多条数据插入放在一条SQL语句中一次执行。

以前用Mysql做开发一直是这样用的:

INSERT INTO TABLE(col1, col2) VALUES(val11, val12), (val21, val22) ;

最近用SQLite才发现这个语法并非标准SQL,故而SQLite并不支持。经过一番查找,发现如下方法可以替代:

INSERT INTO TABLE(col1, col2) SELECT val11, val12 UNION ALL SELECT val21, val22 ;

这样的写法是属于复合SQL语句,表示先把两个SELECT的结果集进行无删减的联合,再把联合结果插入到TABLE中。 

posted on 2012-06-14 14:59  民谣  阅读(1323)  评论(0编辑  收藏  举报

导航