|
sqlite是遵守ACID的关系数据库管理系统.因为不存在通信,所以时间消耗比较小.它在php和androi中应用广泛.因为轻量级和直接使用jdbc,相对于使用JAVA的童鞋来说,比BDB学习成本会低一些.而BDB主要通过HASHMAP来实现NoSql.
sqlite的jar包去http://www.sqlite.org//下载.
下面是简单操作sqlite的示例代码:
package sqlite;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* <p> Title: HelloSqlite </p>
* <p> Description: </p>
* <p> Created: 2011-9-5 上午10:44:14 </p>
*
* @author ShengYan
* @version
*/
public class HelloSqlite {
private static final String DB_NAME = "test.db";
public static void main(String[] args) {
Connection conn = null;
Statement stat = null;
PreparedStatement prep = null;
ResultSet rs = null;
try {
Class.forName("org.sqlite.JDBC");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
// 获得库空间
try {
conn = DriverManager.getConnection("jdbc:sqlite:" + DB_NAME);
stat = conn.createStatement();
// 删除表
stat.executeUpdate("drop table if exists people;");
// 创建表
stat.executeUpdate("create table people (name, occupation);");
// 批量插入记录
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);
// 查询表
rs = stat.executeQuery("select * from people;");
while (rs.next()) {
System.out.println("name = " + rs.getString("name"));
System.out.println("job = " + rs.getString("occupation"));
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (prep != null) {
try {
prep.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (stat != null) {
try {
stat.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
} |
|
|