`
ttitfly
  • 浏览: 615772 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java中使用sqlite数据库

阅读更多

sqlite数据库第三方java扩展包下载地址:http://www.zentus.com/sqlitejdbc/

有2个包,一个是nested(嵌入式的),一个是native(本地的)。

区别在于:nested 不需要额外的dll文件,但是速度慢。native需要一个额外的dll文件,速度很快。

 

 1.使用nested包:sqlitejdbc-v037-nested.jar

java代码:

java 代码
  1. public class Test {   
  2.     public static void main(String[] args) throws Exception {   
  3. //      System.setProperty("java.library.path", ".");   
  4.            
  5.         Class.forName("org.sqlite.JDBC");   
  6.         Connection conn = DriverManager.getConnection("jdbc:sqlite:c:/test3.db");   
  7.         //建立事务机制,禁止自动提交,设置回滚点   
  8.         conn.setAutoCommit(false);   
  9.            
  10.         Statement stat = conn.createStatement();   
  11.         stat.executeUpdate("create table people (name, occupation);");   
  12.         stat.executeUpdate("insert into people values ('Gandhi', 'politics');");   
  13.         stat.executeUpdate("insert into people values ('Turing', 'computers');");   
  14.         stat.executeUpdate("insert into people values ('Wittgenstein', 'smartypants');");   
  15.         conn.commit();   
  16.            
  17.         ResultSet rs = stat.executeQuery("select * from people;");   
  18.         while (rs.next()) {   
  19.             System.out.println("name = " + rs.getString("name"));   
  20.             System.out.println("occupation = " + rs.getString("occupation"));   
  21.         }   
  22.           
  23.         rs.close();   
  24.         conn.close();   
  25.     }   
  26. }  

 

2. 使用native包:sqlitejdbc-v037-native.jar

 另外需要一个dll文件,如果直接把dll文件放在jdk安装目录的bin目录下的话,就不用做任何操作了。java代码和上面使用nested包的java代码一样。

如果不是把dll放在jdk安装目录的bin目录下,而是随便放在一个目录,那么需要设置一个参数:

比如:

java 代码
  1. System.setProperty("java.library.path""E:/1008/workspace/sqlitetest/sqlitejdbc.dll");  

或者

java 代码
  1. System.setProperty("java.library.path""E:/1008/workspace/sqlitetest/");  
其余代码一样。
分享到:
评论
3 楼 bastengao 2011-06-27  
发现http://www.zentus.com/sqlitejdbc/已经好久没更新了。http://www.xerial.org/trac/Xerial/wiki/SQLiteJDBC 似乎比较给力。
2 楼 keating 2009-12-21  
如果不是把dll放在jdk安装目录的bin目录下,而是随便放在一个目录,那么需要设置一个参数:
-----------------------
把dll放在jre安装目录的bin下,做桌面软件还可以一起打包,岂不更爽。
1 楼 nianming.xue 2008-10-11  
为什么我设置了System.setProperty("java.library.path", 还是提示我 Exception in thread "main" java.sql.SQLException: no SQLite library found?

相关推荐

Global site tag (gtag.js) - Google Analytics