在Python中,可以使用pysqlite2
类与sqlite数据库进行交互。
from pysqlite2 import dbapi2 as sqlite
将命令发送到数据库的一种方法是通过数据库对象:
db = sqlite.connect('mydb.sqlite')
db.execute('CREATE TABLE IF NOT EXISTS t1(a, b, c)')
另一种方式是通过游标:
cur = db.cursor()
cur.execute('CREATE TABLE IF NOT EXISTS t2(x, y, z)')
这两种方式都起作用并且能够完成工作,但是我怀疑在某种情况下,一种方式可以在另一种方式上进行。这些案件是什么?
答案 0 :(得分:3)
connection.execute
方法是SQLite API扩展;它没有由DB-API指定:http://www.python.org/dev/peps/pep-0249/。它只是创建游标并在其上调用execute
的简写,返回光标。
如果您想确保您的代码可以与其他基于DB-API的数据库库一起使用,则不应该使用它。