gpt4 book ai didi

c - sqlite3 关闭语句不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 04:58:24 25 4
gpt4 key购买 nike

我正在使用带有 sqlite3 的 C 程序。有时插入有效。但有时,它不起作用。断言(retval == SQLITE3_OK)给出错误。调试时我发现 sqlite3_step() 的 retval 值是错误代码 = 5指的是数据库文件忙即使使用 sqlite3_close() 关闭也会返回错误代码 5。

关于如何关闭数据库连接的任何想法,即使它很忙?

最佳答案

您可能正在进行交易。尝试检查 http://www.sqlite.org/c3ref/get_autocommit.html有关 sqlite3_get_autocommit() 工作原理的解释。如果它不在自动提交中,它应该返回一个零,这意味着有一个打开的事务。

或者如果您怀疑您的数据库可能仍在处理某些事情,您可以使用 sqlite3_busy_timeout() 设置一个计时器。 http://www.sqlite.org/c3ref/busy_timeout.html

关于c - sqlite3 关闭语句不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2140834/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com