1.sqlite简介:
SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月。 至2015年已经有15个年头,SQLite也迎来了一个版本 SQLite 3已经发布。
2.sqlite的数据类型:
sqlite提供一个typelessness(无类型),因此可以存储各种类型的数据。
3.sqlite的使用:
只要在window或者linux环境下安装了sqlite,即可通过sql语句创建数据库,对数据库进行操作。同时创建数据库的路径是可以自己指定的。
4.sqlite在代码中的使用:
sqlite的使用非常简单:
(1)在Python中使用:
①在代码引入sqlite3的包:import sqlite3;
②写建库及建表的语句:
使用sqlite建库时不需要手动建立,代码会在指定路径下查找数据库,若没有该数据库就会自动建立:
conn = sqlite3.connect(p+'\\'+m+'.db')
sql = 'create table IF NOT EXISTS t ( ID text NOT NULL,TIME integer NOT NULL,DATA blob NOT NULL,PRIMARY KEY (ID, TIME))'
conn.execute(sql)
③对数据库进行对应的操作:
以添加数据为例:
t=(n,timeStamp,img)
insertSql='INSERT INTO t VALUES (?,?,?)'
conn.execute(insertSql,t)
(2)在Spring Boot中的使用:
①在maven文件中引入依赖:
<dependency> <groupId>org.xerial</groupId> <artifactId>sqlite-jdbc</artifactId> <version>3.20.0</version> </dependency>
②建立数据库和表:
Connection connection1 = DriverManager.getConnection("jdbc:sqlite:"+pathFirst);
String sql = "create table IF NOT EXISTS t( ID text NOT NULL,TIME integer NOT NULL,DATA blob NOT NULL,PRIMARY KEY (ID, TIME))";
PreparedStatement ps1 = connection.prepareStatement(sql);
ps1.execute();
③对数据库进行相应的操作:
String findAll = "select * from t";
PreparedStatement ps2 = connection1.prepareStatement(findAll);
ResultSet rs = ps2.executeQuery();