这是最低限度的代码:
import sqlite3 as sq3
import os
import sys
def main(argv):
q = 'select * from table_name;'
db = 'test.db'
con = sq3.connect(db)
cur = con.cursor()
cur.executescript(q) // cur.execute(q) will work
print cur.fetchone()
if __name__ == '__main__':
sys.exit(main(sys.argv))
我的问题是executescript
始终失败,而execute
工作正常。是因为executescript
是Nonstandard还是我错过了一些图书馆?
答案 0 :(得分:3)
executescript
不应该返回任何东西,它会返回什么?最后一句话?第一个声明?或者也许那个在中间。
由于它允许您执行多个SQL语句,因此无法确定您想要返回哪个SQL语句。
答案 1 :(得分:2)
executescript()
用于执行多个SQL命令,即脚本。多个SQL命令的返回值是多少?很难说,这就是executescript()
返回None
的原因。你没有做错任何事,你的装置中也没有任何遗漏。