SQLite3 API
连接对象(connection)
class sqlite3.Connection
方法 | 描述 |
---|---|
cursor([cursorClass]) | 游标方法接受单个可选参数cursorClass。 |
commit() | 此方法提交当前事务。如果不调用此方法,自上次调用commit()后做的任何改动对于其它数据库连接不可见 |
rollback() | 该方法回滚自从上一次commit()调用之后对数据库所做的任何更改 |
close() | 这将关闭数据库连接 |
execute(sql[, parameters]) | 这是一个非标准快捷方式,通过调用cursor()方法创建一个游标对象,使用参数调用游标的execute() |
executemany(sql[, parameters]) | 这是一个非标准快捷方式,通过调用cursor()方法创建一个游标对象,使用给定的参数调用游标的executemany() |
executescript(sql_script) | 这是一个非标准的快捷方式,通过调用cursor()方法,使用给定的sql_script方法调用游标executescript() |
create_function(name, num_params, func) | 创建一个自定义的函数,随后可以在SQL语句中以函数名name来调用它 |
create_aggregate(name, num_params, aggregate_class) | 创建一个用户定义的聚合函数。 |
create_collation(name, callable) | 用指定的name和callable创建一个排序规则。将会传两个字符串参数给可调用对象 |
interrupt() | 可以从另一个线程中调用该方法来中止该连接正在执行的查询 |
set_authorizer(authorizer_callback) | 这个例程注册一个回调。每次尝试访问的数据库中的表的列,则调用该回调。 |
set_progress_handler(handler, n) | 这个例程注册一个回调。SQLite虚拟机每执行n个指令调用该回调 |
set_trace_callback(trace_callback) | 要为SQLite后端实际执行的每个SQL语句调用寄存器trace_callback |
enable_load_extension(enabled) | 这个例程允许/不允许 SQLite 引擎从共享库加载 SQLite 扩展。 |
load_extension(path) | 此例程从一个共享库加载 SQLite 扩展。 |
row_factory | 可以将此属性修改为一可调用对象,该对象接收游标和原始行作为参数,返回真正的结果行 |
text_factory | 使用此属性可以控制对于TEXT数据类型,何种对象将会返回。 |
total_changes | 返回自从数据库连接打开以来,所有的被修改的/添加的/删除的数据行的数目 |
iterdump() | 返回一个以SQL文本格式转储数据的迭代器。 |
游标对象(cursor)
class sqlite3.Cursor
对象属性
属性 | 描述 |
---|---|
rowcount | 虽然sql3模块的curcor类实现了该属性,怪异的是数据库引擎自己支持如何决定”受影响行”/”被选择行” |
lastrowid | 此只读属性提供最后被修改行的 rowid 。仅当您使用execute()方法发出INSERT语句时,才会设置此选项。 |
description | 此只读属性提供最后一个查询的列名称 |
connection | 此只读属性提供由Cursor对象使用的SQLite数据库Connection |
对象方法
方法 | 描述 |
---|---|
execute(sql[, parameters]) | 执行一个 SQL 语句。 |
executemany(sql, seq_of_parameters) | 对在序列seq_of_parameters中找到的所有参数序列或映射执行SQL命令 |
executescript(sql_script) | 这是一次执行多个 SQL 语句的非标准的便捷方法 |
fetchone() | 获取查询结果集的下一行,返回单一序列,如果没有数据可用,返回None |
fetchmany(size=cursor.arraysize) | 获取查询结果的下一组行,返回一个列表 |
fetchall() | 获取查询结果的所有(剩余)行,返回一个列表。 |
close() | 现在关闭光标(而不是每次调用del时) |
行对象(Row)
Row实例作为Connection对象的高度优化的row_factory。在大多数功能中它试图模仿一个元组
类型转换
Python转SQLit
Python类型 | SQLite类型 |
---|---|
None | |
int | INTEGER |
float | REAL |
str | TEXT |
bytes | BLOB |
SQLite转python
SQLite类型 | Python类型 |
---|---|
None | |
INTEGER | int |
REAL | float |
TEXT | 默认情况下取决于text_factory,str |
BLOB | bytes |
参考文献:
http://python.usyiyi.cn/translate/python_352/library/sqlite3.html