Sqlite数据库第三方java扩展包下载地址:
http://www.zentus.com/sqlitejdbc/
Java中使用Sqlite数据库有两种方式:
1.nested(嵌入式的)
2.native(本地的)
区别在于:
nested 不需要额外的dll文件,但是速度慢。
native需要一个额外的dll文件,速度很快。
1.nested(嵌入式的),sqlitejdbc-v056.jar需要加到classpath里
Sqlite中如何查询数据库中存在的所有表?
Java中使用Sqlite数据库有两种方式:
1.nested(嵌入式的)
2.native(本地的)
区别在于:
nested 不需要额外的dll文件,但是速度慢。
native需要一个额外的dll文件,速度很快。
1.nested(嵌入式的),sqlitejdbc-v056.jar需要加到classpath里
- package com.esri;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.Statement;
- public class TestSqlite {
- /**
- * @param args
- */
- public static void main(String[] args) {
- // System.setProperty("java.library.path", ".");
- try {
- Class.forName("org.sqlite.JDBC");
- Connection conn = DriverManager
- .getConnection("jdbc:sqlite:c:/test3.db");
- // 建立事务机制,禁止自动提交,设置回滚点
- conn.setAutoCommit(false);
- Statement stat = conn.createStatement();
- stat.executeUpdate("create table people (name, occupation);");
- stat.executeUpdate("insert into people values ('Gandhi', 'politics');");
- stat.executeUpdate("insert into people values ('Turing', 'computers');");
- stat.executeUpdate("insert into people values ('Wittgenstein', 'smartypants');");
- conn.commit();
- ResultSet rs = stat.executeQuery("select * from people;");
- while (rs.next()) {
- System.out.println("name = " + rs.getString("name"));
- System.out
- .println("occupation = " + rs.getString("occupation"));
- }
- rs.close();
- conn.close();
- } catch (Exception e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
Sqlite中如何查询数据库中存在的所有表?
- SELECT name FROM sqlite_master
- WHERE type='table'
- ORDER BY name;