import java.sql.*;public class Test { public static void main(String[] args) throws Exception { Class.forName("org.sqlite.JDBC"); Connection conn = DriverManager.getConnection("jdbc:sqlite:test.db"); Statement stat = conn.createStatement(); stat.executeUpdate("drop table if exists people;"); stat.executeUpdate("create table people (name, occupation);"); PreparedStatement prep = conn.prepareStatement( "insert into people values (?, ?);"); prep.setString(1, "Gandhi"); prep.setString(2, "politics"); prep.addBatch(); prep.setString(1, "Turing"); prep.setString(2, "computers"); prep.addBatch(); prep.setString(1, "Wittgenstein"); prep.setString(2, "smartypants"); prep.addBatch(); conn.setAutoCommit(false); prep.executeBatch(); conn.setAutoCommit(true); ResultSet rs = stat.executeQuery("select * from people;"); while (rs.next()) { System.out.println("name = " + rs.getString("name")); System.out.println("job = " + rs.getString("occupation")); } rs.close(); conn.close(); }}
http://www.zentus.com/sqlitejdbc/
sqlite判断数据表存在用到的Sql语句 SELECT COUNT(*) as CNT FROM sqlite_master where type='table' and name='DBInfo' //其中DBInfo为需要判断的表名。注意大小写敏感! http://blog.csdn.net/ymdcr/article/details/6027671 SQLite jdbc封装类 http://liufei-fir.iteye.com/blog/786500 SQLite一条SQL语句插入多条记录
为了减少数据库连接的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中。
http://blog.sina.com.cn/s/blog_589016320100uxzn.htmlsqlite不支持像mysql这样一条语句插入多条记录。
而sqlite是以文件的形式存在磁盘中,每次访问时都要打开一次文件,如果对数据进行大量操作时,会很慢~
解决办法是用事务的形式提交:因为我们开始事务后,进行大量操作的语句都保存在内存中,当提交时才全部写入数据库,此时,数据库文件也就只用打开一次。
sql语句:
view plain begin; INSERT INTO "table" VALUES ('a', 'b', 'c'); INSERT INTO "table" VALUES ('a', 'b', 'c'); INSERT INTO "table" VALUES ('a', 'b', 'c'); commit;php语句:
view plain $i = 0; $db->beginTransaction(); while ($i<10){ $sql = "INSERT INTO 'table' VALUES ('a', 'b', 'c')"; $db->exec($sql); $i++; } $db->commit(); http://blog.csdn.net/happyqyt/article/details/6742740 sqlite自增字段的写法 SQLite自增ID自段使用方法为 INTEGER PRIMARY KEY AUTOINCREMENT如:CREATE TABLE 21andy ( id INTEGER PRIMARY KEY AUTOINCREMENT, 21andy VARCHAR(100) NOT NULL, date DATE ); http://blog.163.com/qj_l12%40126/blog/static/3593082620098911151877/ 分页查询显示 类似MySQL数据库 ,是利用mySQL的LIMIT函数,LIMIT [offset,] rows从数据库表中M条记录开始检索N条记录的语句为:SELECT * FROM 表名称 LIMIT M,N
例如从表Sys_option(主键为sys_id)中从10条记录还是检索20条记录,语句如下:
select * from sys_option limit 10,20
转载于:https://www.cnblogs.com/wuhenke/archive/2011/10/30/2229126.html