SQLite嵌入式数据库
来源:互联网 发布:人工智能平台发布 编辑:程序博客网 时间:2024/05/17 05:14
SQLite是一个由C语言编写的嵌入式数据库管理API,只有一个几百KByte的dll,无需安装,操作是只需要调用其提供的API即可。因为是C语言编写,其API并不符合JDBC规范,因此有人编写了一个对应的jar包(实际上就是跨语言操作,调用dll)。
java操作SQLite
1、下载jar包“sqlite-jdbc-3.7.2.jar”。
这个jar包把dll转换成符合java jdbc规范的方式使用。
2、准备开发环境
Windows 7、MyEclipse 8.6、jdk1.7
3、在MyEclipse上新建java Project工程,目录结构如下:
sqliteDemo src com.jasper.sqlite TestSqlite.java lib sqlite-jdbc-3.7.2.jar sqlite.database
TestSqlite.java // 样例代码
sqlite.database // 数据库文件(后缀可以随便写)
4、编写TestSqlite.java代码
package com.jasper.sqlite;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class TestSqlite { public static void main( String[] args ) { // 数据库文件路径 String databaseFile = TestSqlite.class.getClassLoader().getResource("").getPath() + "../sqlite.database"; System.out.println(databaseFile); Connection con = null; Statement st = null; try { // 加载驱动 Class.forName("org.sqlite.JDBC"); // 获取数据库连接 con = DriverManager.getConnection("jdbc:sqlite:" + databaseFile); // 设置提交事物为false con.setAutoCommit(false); st = con.createStatement(); // 设置超时 st.setQueryTimeout(30); // 执行删除操作 st.execute("drop table if exists person"); // 执行创建操作 st.execute("create table person(id integer,name string)"); // 执行插入操作 st.execute("insert into person(id,name) values(1,'aaa')"); st.execute("insert into person(id,name) values(2,'bbb')"); st.execute("insert into person(id,name) values(3,'ccc')"); st.execute("insert into person(id,name) values(4,'eee')"); ResultSet rs = st.executeQuery("select * from person"); // 打印结果 while (rs.next()) { System.out.println("id:" + rs.getInt("id") + ",name:" + rs.getString("name")); } // 提交 con.commit(); } catch (ClassNotFoundException e) { e.printStackTrace(); try { if (con != null) { // 回滚 con.rollback(); } } catch (SQLException e1) { e1.printStackTrace(); } } catch (SQLException e) { e.printStackTrace(); try { if (con != null) { // 回滚 con.rollback(); } } catch (SQLException e1) { e1.printStackTrace(); } } finally { if (st != null) { try { st.close(); } catch (SQLException e) { e.printStackTrace(); } } if (con != null) { try { con.close(); } catch (SQLException e) { e.printStackTrace(); } } } }}
5、执行结果
/D:/myEclipseWorkspaces/mybatisDemo/bin/../sqlite.database
id:1,name:aaa
id:2,name:bbb
id:3,name:ccc
id:4,name:eee
0 0
- 嵌入式数据库 SQLite 简介
- 【转】嵌入式数据库 SQLite
- 嵌入式数据库sqlite
- 嵌入式数据库sqlite
- 嵌入式数据库sqlite
- Android SQLite嵌入式数据库
- 嵌入式数据库 SQLite 浅析
- 嵌入式数据库 SQLite 浅析
- 嵌入式数据库sqlite
- SQLite嵌入式数据库
- 嵌入式数据库 SQLite 浅析
- 嵌入式数据库简介---SQLite
- 嵌入式数据库 SQLite 浅析
- 嵌入式数据库SQLite与Java
- java操作嵌入式数据库sqlite
- 嵌入式数据库SQLite与Java
- Python:操作嵌入式数据库SQLite
- 嵌入式关系型数据库SQLite
- ListView 实现类似电话薄标题碰撞效果
- Python设计模式(二十三)【模板方法模式】
- bat知识点8_findstr
- 文件不存在抛出异常,如何处理
- 星际大发现时代己开启,星际旅行 星际穿越,你准备好了吗?
- SQLite嵌入式数据库
- bat知识点9_type
- mybatis逆向工程生成实体
- Android 获取app应用大小、手机内存信息、删除文件方法、获得文件大小
- 微信支付APP客户端及服务端集成
- 使用Eclipse构建Maven项目
- less总结
- HDOJ 1248 寒冰王座(完全背包)
- 使用mybatis访问mysql数据库之一