Small. Fast. Reliable.
Choose any three.

SQLite C接口

销毁准备好的语句对象

int sqlite3_finalize(sqlite3_stmt * pStmt);

调用sqlite3_finalize()函数以删除准备好的语句。如果该语句的最新评估没有遇到错误,或者该语句从未被评估过,则sqlite3_finalize()返回SQLITE_OK。如果对语句S的最新评估失败,则sqlite3_finalize(S)返回适当的错误代码扩展错误代码

sqlite3_finalize(S)例程可以在已准备好的语句S的生命周期中的任何时候调用:在评估语句S之前,一次或多次调用sqlite3_reset()之后或在调用sqlite3_step()之后,无论是否或语句尚未完成执行。

在NULL指针上调用sqlite3_finalize()是无害的操作。

应用程序必须完成每个准备好的语句,以避免资源泄漏。应用程序在完成后尝试使用准备好的语句,这是一个严重的错误。在结束后使用任何准备好的语句都可能导致未定义的不良行为,例如segfaults和堆损坏。

另请参见 对象常量函数的列表