SQLite是一款轻型的数据库,遵守ACID的关系型数据库管理系统,它的设计目标是嵌入式的,数据库是一个.db文件。由于SQLite本身是C写的,而且体积很小,占用资源非常的低,所以,经常被用于开发一些小型项目或者脚本工具,百万级数据存储查询对于SQLite来讲轻轻松松。
Python定义了一套操作数据库的API接口,任何数据库要连接到Python,只需要提供符合Python标准的数据库驱动即可。
由于SQLite的驱动内置在Python标准库中,所以我们可以直接来操作SQLite数据库。
SQLite 操作流程
如下是一张学生信息表Student_Information,Id为主键唯一索引,分别包含学生姓名、年龄、学籍注册状态、班级。
SQL建表语句如下
SQLite 的 CREATE TABLE 语句用于在任何给定的数据库创建一个新表。创建基本表,涉及到表名称、字段名称及字段类型,基本语法如下:
代码实现示例如下:
我们使用Navicat For SQLite客户端工具链接数据库,可以查看在Dm_Result.db文件中创建了Student_Information表,如下:
通常,根据程序设计,我们会创建多张表,如何在一次性完成全部表的创建,我们在Create类中添加如下方法:
我们直接运行Create().run_all(),即可实现将一次性执行了Create类中除了初始化和run_all方法之外的全部方法。
如下,实现将上面表格数据写入到学生信息表中,代码实现示例如下:
我们使用Navicat For SQLite客户端工具链接数据库,可以查看写入数据,如下:
当然可以通过cursor.execute(sql),直接执行数据插入sql,一般来讲SQLite支持两种语法结构,如下:
另一种
SQLite数据查询的基本语法如下:
代码实现示例如下:
执行上述代码,可以获取 SELECT * from Student_Information的全部数据,如下:
代码实现示例如下:
如下,删除了Student_Information表中全部数据:
如上,我们通过Cursor对象执行create,select,insert,update,delete数据操作。需要注意的是要保证打开的Connection对象和Cursor对象都被正确地关闭,否则,资源就会泄露。
通常使用
try:...except:...finally:...确保链接被正确的关闭,我们以数据删除为例,代码示例如下: