SQLite插入查询不适用于python?


问题内容

我一直在尝试使用python中的以下代码将数据插入数据库:

import sqlite3 as db
conn = db.connect('insertlinks.db')
cursor = conn.cursor()
db.autocommit(True)
a="asd"
b="adasd"
cursor.execute("Insert into links (link,id) values (?,?)",(a,b))
conn.close()

该代码运行没有任何错误。但是不会更新数据库。我尝试添加,conn.commit()但出现错误,提示未找到模块。请帮忙?


问题答案:

您确实必须在插入后提交:

cursor.execute("Insert into links (link,id) values (?,?)",(a,b))
conn.commit()

或将连接用作上下文管理器

with conn:
    cursor.execute("Insert into links (link,id) values (?,?)", (a, b))

或组自动提交正确地设定isolation_level关键字参数的connect()方法None

conn = db.connect('insertlinks.db', isolation_level=None)

请参阅控制事务