java sqlite 源码分析_Java程序中使用SQLite总结

吴凯泽
2023-12-01

SQLite是一种轻量级的开源数据库,其源代码可从www.sqlite.org获取,由于其源代码是C语言实现的,因此它提供的接口可以很简单地被C/C++程序使用。Java程序中如何使用它呢?本人初学Java,暂时也不了解Java程序如何调用C/C++库,但目前了解到两种方法:

(1)使用SQLite JDBC,这个使用很方便,只需要下载个jar包即可,缺点就是慢一点;

(2)使用SQLite Java Wrapper,这个据说需要安装本地库,比如windows下需要相应的dll文件,linux下需要相应的.so文件。

本人试过第(1)中方法,下面的例子只针对第(1)种方法,第(2)种方法留待以后深入学习。

1、下载SQLite JDBC jar包

2、将下载好的jar包放入%JAVA_HOME%/lib目录,并将该jar包完整路径添加到CLASSPATH环境变量中。

3、示例:

import java.sql.*;public classTest {public static void main(String[] args) throwsException {

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();

}

}

 类似资料: