Python(SQLite)executescript用法

SQLite 数据库模块的游标对象还包含了一个 executescript() 方法,这不是一个标准的 API 方法,这意味着在其他数据库 API 模块中可能没有这个方法。但是这个方法却很实用,它可以执行一段 SQL 脚本。

例如,如下程序使用 executescript() 方法执行一段 SQL 脚本:

复制代码
# 导入访问SQLite的模块
import sqlite3

# ①、打开或创建数据库
# 也可以使用特殊名::memory:代表创建内存中的数据库
conn = sqlite3.connect('first.db')
# ②、获取游标
c = conn.cursor()
# ③、调用executescript()方法执行一段SQL脚本
c.executescript('''
    insert into user_tb values(null, '武松', '3444', 'male'); 
    insert into user_tb values(null, '林冲', '44444', 'male');
    create table item_tb(_id integer primary key autoincrement, name, price);
    ''')
conn.commit()
# ④、关闭游标
c.close()
# ⑤、关闭连接
conn.close()

上面程序调用 executescript() 方法执行一段复杂的 SQL 脚本,在这段 SQL 脚本中包含了两条 insert 语句,该语句负责向 user_tb 表中插入记录,还使用 create 语句创建了一个数据表。

运行上面程序,可以看到 first.db 数据库中多了一个 item_tb 数据表,user_tb 数据表被插入了两条记录。

此外,为了简化编程,SQLite 数据库模块还为数据库连接对象提供了如下 3 个方法:

execute(sql[, parameters]):执行一条 SQL 语句。

executemany(sql[, parameters]):根据序列重复执行 SQL 语句。

executescript(sql_script):执行 SQL 脚本。

读者可能会发现,这 3 个方法与游标对象所包含的 3 个方法完全相同。事实正是如此,数据库连接对象的这 3 个方法都不是 DB API 2.0 的标准方法,它们只是游标对象的 3 个方法的快捷方式,因此在用法上与游标对象的 3 个方法完全相同。

相关推荐
数厘19 分钟前
2.20 sql基础聚合函数(COUNT、SUM、AVG、MAX、MIN)
数据库·sql·oracle
码农周23 分钟前
告别大体积PDF!基于PDFBox的Java压缩工具
java·spring boot
devilnumber32 分钟前
java中Redisson ,jedis,Lettuce和Spring Data Redis的四种深度对比和优缺点详解
java·redis·spring
摇滚侠33 分钟前
Java 进阶教程,全面剖析 Java 多线程编程
java·开发语言
yaaakaaang33 分钟前
十四、命令模式
java·命令模式
小锋java12341 小时前
【技术专题】Matplotlib3 Python 数据可视化 - Matplotlib3 绘制饼状图(Pie)
java
wuminyu1 小时前
专家视角看JVM_StartThread
java·linux·c语言·jvm·c++
awljwlj1 小时前
黑马点评复习—缓存相关【包含可能的问题和基础知识复习】
java·后端·spring·缓存
Gofarlic_OMS1 小时前
ENOVIA基于Token的许可证消费模式分析与分点策略
java·大数据·开发语言·人工智能·制造
ROLL.71 小时前
Git和Repo
java·git·安卓