Connect是sqllite3模块中最基本的也是最重要的一个类,其主要方法如下表所示:
方法 | 说明 |
execute(sql[,parameters]) | 执行一条SQL语句 |
executemany(sql[,parameters]) | 执行多条SQL语句 |
cursor() | 返回连接的游标 |
commit() | 提交当前事务,如果不提交,那么自上次调用commit()方法之后的所有修改都不会真正保存到数据库中 |
rollback() | 撤销当前事务,将数据库恢复至上次调用commit()方法后的状态 |
close() | 关闭数据库连接 |
create_function(name,num_params,func) | 创建可在SQL语句中调用的函数,其中name为函数名,num_params表示该函数可以接收的参数个数,func表示Python可调用的对象 |
Connection对象的其它几个函数都比较容易理解,下面的代码演示了如何在aqlite3连接中创建并调用自定义函数:
1 import sqlite3
2 import hashlib
3
4 #自定义函数
5 def md5sum(t):
6 return hashlib.md5(t).hexdigest()
7
8 #在内存中创建临时数据库
9 conn = sqlite3.connect(":memory:")
10
11 #创建可在SQL语句中调用的函数
12 conn.create_function('md5',1,md5sum) #这个md5是在SQL中的函数名
13
14 cur = conn.cursor()
15 cur.execute('select md5(?)',['中国山东烟台'.encode()])
16
17 print(cur.fetchone()[0])
18
19
20 #a23f2beccddbc6c224398b15b760d25d