sqlite的基本使用示例
发布日期:2022-02-10 11:36:49
浏览次数:23
分类:技术文章
本文共 2266 字,大约阅读时间需要 7 分钟。
To:上一篇文章
上一文章写得有点复杂,需要创建datasource,然后还有一大堆的封装方法,这里参考官网上(https://bitbucket.org/xerial/sqlite-jdbc#markdown-header-usage)的示例,如下:
具体流程
(1)Connection conn = DriverManager.getConnection("jdbc:sqlite:***/smaple");(2)Statement statement = conn.createStatement();
(3)statement.executeUpdate("select/insert/drop/delete等sql语句");
(4)conn.close()
注意:关于在windows/Linux/以及在内存上创建sqlite数据库有一下集中方法:
(1)Windows上创建connection
Connection connection = DriverManager.getConnection("jdbc:sqlite:C:/work/mydatabase.db");
(2)Linux上创建connection
Connection connection = DriverManager.getConnection("jdbc:sqlite:/home/leo/work/mydatabase.db");
(3)没有db文件,只在内存上临时创建
Connection connection = DriverManager.getConnection("jdbc:sqlite::memory:");
import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class Sample{ public static void main(String[] args) throws ClassNotFoundException { // load the sqlite-JDBC driver using the current class loader Class.forName("org.sqlite.JDBC"); Connection connection = null; try { // create a database connection connection = DriverManager.getConnection("jdbc:sqlite:sample.db"); Statement statement = connection.createStatement(); statement.setQueryTimeout(30); // set timeout to 30 sec. statement.executeUpdate("drop table if exists person"); statement.executeUpdate("create table person (id integer, name string)"); statement.executeUpdate("insert into person values(1, 'leo')"); statement.executeUpdate("insert into person values(2, 'yui')"); ResultSet rs = statement.executeQuery("select * from person"); while(rs.next()) { // read the result set System.out.println("name = " + rs.getString("name")); System.out.println("id = " + rs.getInt("id")); } } catch(SQLException e) { // if the error message is "out of memory", // it probably means no database file is found System.err.println(e.getMessage()); } finally { try { if(connection != null) connection.close(); } catch(SQLException e) { // connection close failed. System.err.println(e); } } }}
转载地址:https://blog.csdn.net/courage89/article/details/8791338 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2024年03月30日 04时12分19秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
IntelliJ IDEA 部署 Web 项目,终于搞懂了!
2019-04-27
Netty 在 Dubbo 中是如何应用的?
2019-04-27
两张趣图助你理解 HTTP 状态码!
2019-04-27
Java并发编程中的若干核心技术,向高手进阶!
2019-04-27
为什么要进行 URL 编码???
2019-04-27
Netty 如何实现心跳机制与断线重连?
2019-04-27
学习java多线程,这必须搞懂的这几个概念,很重要。
2019-04-27
天天用Synchronized,底层原理是个啥?
2019-04-27
Spring Boot 打的包为什么能直接运行?
2019-04-27
Java中的锁原理、锁优化、CAS、AQS详解!
2019-04-27
Redis 到底是单线程还是多线程?我要吊打面试官!
2019-04-27
厉害了,如何搭建一套自己的私有网盘?
2019-04-27
面试必问-几种线程安全的Map解析
2019-04-27
一张图弄懂java线程的状态和生命周期
2019-04-27
推荐几个牛逼的 IDEA 插件,还带动图!
2019-04-27
IntelliJ IDEA 从入门到上瘾教程!
2019-04-27
为什么 Java 线程没有 Running 状态?
2019-04-27
百度开源的 71 个项目,太牛逼了!
2019-04-27
Java 泛型背后的原理是什么?
2019-04-27
Java 处理 Exception 的 9 个最佳实践!
2019-04-27