java 连接sqlite数据库

        最近项目上要运行sqlite数据库,但是在使用的过程中发生了很多纠结的问题,让我心情很忧伤。但是我终于在话费一番功夫之后运行成功了,所以,我决定把我成功的经验拿来分享。

     首先java运行需要下载sqlite-jdbc的jar包,我在maven中心仓库中寻找合适的jar。如图:

我选择的是sqlite-jdbc的3.23.1版本的jar,但是后来发现这个版本的jar在官网中并不存在,

我的java是创建的maven项目,如图:

程序代码是这样的

package com.sqlite;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class SqliteTest {
		public static void main(String[] args) throws ClassNotFoundException, SQLException {
			
			Class.forName("org.sqlite.JDBC");
			String db = "C:\\Users\\tdht\\Desktop\\test.db";
			Connection conn = DriverManager.getConnection("jdbc:sqlite:" + db);
			Statement state = conn.createStatement();
			ResultSet rs = state.executeQuery("select * from company;"); //查询数据
			while (rs.next()) { //将查询到的数据打印出来
	             System.out.print("name = " + rs.getString("name") + " "); //列属性一
	             System.out.println("age = " + rs.getString("age")); //列属性二
	         }
	        rs.close();
			conn.close();
			
		}
		
}

现在在官网查看有没有对应的sqlite下载

发现官网的下载的版本是3.25.2的因为3250200就是这样解释的,后面两个00不知道含义,但是前面的含义就是3.25.2

根据这个规则

sqlite-shell-win32-x86-<build#>.zip
sqlite-dll-win32-x86-<build#>.zip

(注意: <build#> 是 sqlite 的编译版本号)

我们可以直接编写url地址下载

但是我想下载的3.23.1的版本还是不确定的,如何确定呢?

就是查看版本信息

 

我搞错了,但是基本上很接近了,

最后拼接的url是:

https://www.sqlite.org/2018/sqlite-dll-win32-x86-3230000.zip

https://www.sqlite.org/2018/sqlite-tools-win32-x86-3230000.zip

下载之后全部解压到一个文件夹中,我这里是d:sqlite

然后配置环境变量Path

使用cmd

sqlite3 test.db

.databases

这样就创建了test.db文件。

创建db文件之后,就可以使用

图形可视化工具创建表和数据。

我这里下载的是sqlite studio,

选择

ok就连接好了。sqlite只能本地连接,就是只能是打开本地文件,没有ip地址连接啊,

然后创建表和数据


create table company(
id int primary key,
name varchar(20),
age short,
address varchar(50),
salary decimal(10,3)
);

insert into company values(1,'Paul', 32, 'California', 20000);
insert into company values(2,'Allen', 25, 'Texas', 15000);
insert into company values(3,'Teddy', 23, 'Norway', 20000);
insert into company values(4,'Mark', 25, 'Rich-Mond', 65000);
insert into company values(5,'David', 27, 'Texas', 85000);
insert into company values(6,'Kim', 22, 'South-Hal', 45000);
insert into company values(7,'James', 24, 'Houston', 10000);
insert into company values(8,'Paul', 24, 'Houston', 20000);
insert into company values(9,'James', 44, 'Norway', 5000);

这样数据就弄好了。

运行java项目,没有任何报错,输出结果:

name = Paul age = 32
name = Allen age = 25
name = Teddy age = 23
name = Mark age = 25
name = David age = 27
name = Kim age = 22
name = James age = 24
name = Paul age = 24
name = James age = 44

 

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值