0

这是最低限度的代码:

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是因为非标准还是我错过了一些库?

4

2 回答 2

4

executescript不应该返回任何东西,它会返回什么?最后的声明?第一个说法?或者可能是中间那个。

由于它允许您执行多个 SQL 语句,因此无法判断您想要返回哪一个。

于 2013-05-22T17:14:38.913 回答
2

executescript()用于执行多个 SQL 命令,即一个脚本。多条 SQL 命令的返回值是多少?很难说,这就是为什么executescript()返回None。您没有做错任何事情,安装中也没有任何遗漏。

于 2013-05-22T17:14:37.710 回答