SQLite 是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是在世界上最广泛部署的 SQL 数据库引擎。SQLite 源代码不受版权限制。
一、安装 SQLite 的驱动 JDBC
网上搜索到的 SQLite 文件下载的网址已失效,重新用谷歌检索了最新版的网址。
本节在 Lee_01的博客基础上更新。
第一步:下载SQLite的JDBC驱动
SQLite的JDBC驱动,是一个.jar的java类文件。
网上搜到的下载地址(https://bitbucket.org/xerial/sqlite-jdbc/downloads/),目前已失效。
该项目的当前地址位于 Github:https://github.com/xerial/sqlite-jdbc。
其中,编译好的SQLite JDBC jar文件, 位于 Download 标签下,可以从这里下载到较新版本,比如名为 sqlite-jdbc-3.34.0.jar 的文件。
Download
Download the latest version of SQLiteJDBC from the downloads page.
注:太新版本的JDBC驱动,可能不被 matlab 支持,如果遇到这种情况,替换成老版本的 jar 驱动即可。
第二步:配置 matlab
1、将下载好的包存放在C:\Program Files\MATLAB\${Matlab_Version}\java\jar\toolbox
2、向Matlab的classpath.txt文件中添加*.jar的存放路径
它位于C:\Program Files\MATLAB\R2013b\toolbox\local。
在文件末尾添加存放路径 C:/Program Files/MATLAB/${Matlab_Version}/java/jar/toolbox
注意:如果classpath.txt中原来有同样的jar包路径,要先删除
如果重新打开的matlab仍然不能使用后面的sqlite操作,则在matlab命令窗口内输入 prefdir命令,并在其中新建一个javaclasspath.txt文件,并将之前下载的包的路径写入该txt文件内,保存并退出,然后再重新打开matlab
设置路径是为了避免每次连接数据库之前手动添加路径的麻烦
javaaddpath 'C:\Program Files\MATLAB\${Matlab_Version}\java\jar\toolbox\sqlite-jdbc-3.34.0.jar';
注:${Matlab_Version},表示 Matlab 的版本号,比如 R2015b。
第三步:用matlab连接数据库
% 连接数据库 conn = database('D:\test.db','','','org.sqlite.JDBC','jdbc:sqlite:test.db'); % 判断是否连接成功,也可以用ping命令 isconnection(conn); % isconnection命令,已经不被 matlab R2017b 支持了。可以使用 ping 命令 ping(conn); % 数据读取,可以用 exec + fetch 方式,也可以直接用 fetch 方式: % 方式 A:exec + fetch curs = exec(conn,'select * from xxxtable'); info = fetch(curs); data = info.Data; % 载入数据库中的变量,属性名一律是 Data close(curs); % 关闭数据库链接 % 或者,方式 B:直接用 fetch 命令 info = fetch(conn,'select * from xxxtable'); close(conn); % 关闭数据库
安装和驱动使用的参考资料:
1、除了MATLAB自带的SQLite接口,也可以通过安装JDBC驱动来读取SQLite数据库,功能更加丰富,知乎的这篇博文有介绍。
2、介绍了下载 SQLite JDBC驱动文件 并 通过驱动文件连接到 SQLite 数据库的操作方法,链接在此。
3、SQLite的JDBC驱动的 Git 项目,网址在此。
4、SQLite 的 JDBC 驱动使用样例,见 Lee_01的博客。
二、SQLite 教程
1、初学入门,看这里就够了!
SQLite 教程
SQLite 是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是在世界上最广泛部署的 SQL 数据库引擎。SQLite 源代码不受版权限制。
本教程将告诉您如何使用 SQLite 编程,并让你迅速上手。
2、笔记
(1)什么情况下要避免使用索引?
虽然索引的目的在于提高数据库的性能,但这里有几个情况需要避免使用索引。使用索引时,应重新考虑下列准则:
-
索引不应该使用在较小的表上。
-
索引不应该使用在有频繁的大批量的更新或插入操作的表上。
-
索引不应该使用在含有大量的 NULL 值的列上。
-
索引不应该使用在频繁操作的列上。
(2) 用 MATLAB 自带的 Database Explorer 读取本地的 DB 文件
具体例子见这里。
(3) 官网的错误代码查询,见【Result and Error Codes】。