小巧、快速、可靠 (Small. Fast. Reliable.)
選擇其中三項 (Choose any three.)

SQLite C 介面 (SQLite C Interface)

銷毀已準備好的陳述式物件 (Destroy A Prepared Statement Object)

int sqlite3_finalize(sqlite3_stmt *pStmt);

呼叫 sqlite3_finalize() 函式來刪除已準備好的陳述式 (prepared statement)。如果該陳述式最近一次的評估沒有遇到錯誤,或者該陳述式從未被評估過,則 sqlite3_finalize() 會返回 SQLITE_OK。如果陳述式 S 最近一次的評估失敗,則 sqlite3_finalize(S) 會返回適當的錯誤碼 (error code)延伸錯誤碼 (extended error code)

可以在已準備好的陳述式 (prepared statement) S 的生命週期中的任何時間點呼叫 sqlite3_finalize(S) 常式:在陳述式 S 被評估之前、在一次或多次呼叫 sqlite3_reset() 之後,或在任何呼叫 sqlite3_step() 之後,無論陳述式是否已完成執行。

在 NULL 指標上呼叫 sqlite3_finalize() 是一個無害的空操作 (no-op)。

應用程式必須銷毀每個已準備好的陳述式 (prepared statement),以避免資源洩漏。應用程式嘗試在已銷毀的陳述式上使用它是個嚴重錯誤。在已銷毀的陳述式上進行任何使用都可能導致未定義且不理想的行為,例如區段錯誤 (segfaults) 和堆積損壞 (heap corruption)。

另請參閱物件 (Objects)常數 (Constants)函式 (Functions)的列表。