gpt4 book ai didi

sqlite - 如果 sqlite3_open() 返回错误和有效的数据库连接怎么办?

转载 作者:行者123 更新时间:2023-12-02 05:11:49 25 4
gpt4 key购买 nike

sqlite3_open() 的文档是这样说的:

“即使发生错误,数据库连接句柄通常也会在 *ppDb 中返回。”

这是否意味着如果 sqlite3_open() 返回 SQLITE_OK 以外的东西和一个非空数据库句柄,那么在再次尝试 sqlite3_open() 之前你欠一个 sqlite3_close() ?

如果是这样,这可以解释我遇到的一个问题,即数据库由于被锁定而随机无法打开。

最佳答案

是的,如果 sqlite3 连接对象返回非 null,则需要关闭它。

sqlite3_open() manual很清楚;

Whether or not an error occurs when it is opened, resources associated with the database connection handle should be released by passing it to sqlite3_close() when it is no longer required.

至少,如果不这样做,sqlite3 连接对象本身就会发生内存泄漏,因为 sqlite3_close()释放该对象和分配给它的任何资源。

关于sqlite - 如果 sqlite3_open() 返回错误和有效的数据库连接怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15313284/

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