我在 Python 中有这段代码:
conn = sqlite3.connect("people.db")
cursor = conn.cursor()
sql = 'create table if not exists people (id integer, name VARCHAR(255))'
cursor.execute(sql)
conn.commit()
sql = 'insert into people VALUES (3, "test")'
cursor.execute(sql)
conn.commit()
sql = 'insert into people VALUES (5, "test")'
cursor.execute(sql)
conn.commit()
print 'Printing all inserted'
cursor.execute("select * from people")
for row in cursor.fetchall():
print row
cursor.close()
conn.close()
但似乎永远不会保存到数据库中,数据库上总是有相同的元素,就好像它没有保存任何东西一样。
另一方面,如果我尝试通过 sqlite 访问 db 文件,则会收到此错误:
Unable to open database "people.db": file is encrypted or is not a database
conn.commit
我发现了其他一些可以使用的答案,conn.commit()
但没有改变结果。
任何的想法?