1

我将 sqlite3 与 python 一起使用。我可以通过命令行 CRUD 表。

我还可以通过 python 成功选择、插入和删除(!)记录。但是,当我(在相同的连接上下文中)尝试更新时,出现异常:“无法打开数据库文件”。

我很困惑,有什么想法吗?

PS:如果有任何相关性,这些表是通过 Django 的 manage.py syncdb 创建的。PPS:我通过 CGI 运行代码(授予文件的所有权限,这就是为什么我也可以添加到数据库中)

抱歉错过了代码:

sDb = 'this\is\my\db'
conn = sqlite3.connect( sDb )
cursor = conn.cursor()

# below works:
sSql = "insert into app_filestamp ( file_id, sFileStamp ) values ( 12, 'YYYYY' )"
# below raises the error
sSql = "update app_filestamp set sFileStamp='XXXXX' where id=13"
cursor.execute( sSql )

conn.commit()
conn.close()

“解决方案”

这种尴尬的行为(插入有效,更新无效)只发生在 Windows 环境中。感谢您的输入; 因为这显然不是已知问题,所以我重新考虑了我的方法并摆脱了对 CGI 的需求。请容忍我,我没有进一步调查这个问题。

4

0 回答 0