From 253e67c8b3a72b3a4757fdbc5845297628db0a4a Mon Sep 17 00:00:00 2001 From: Jacob McDonnell Date: Sat, 25 Apr 2026 19:55:15 -0400 Subject: docs: Added All NetBSD Manuals --- static/netbsd/man3/sqlite3_close.3 | 73 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 static/netbsd/man3/sqlite3_close.3 (limited to 'static/netbsd/man3/sqlite3_close.3') diff --git a/static/netbsd/man3/sqlite3_close.3 b/static/netbsd/man3/sqlite3_close.3 new file mode 100644 index 00000000..c273145a --- /dev/null +++ b/static/netbsd/man3/sqlite3_close.3 @@ -0,0 +1,73 @@ +.Dd January 24, 2024 +.Dt SQLITE3_CLOSE 3 +.Os +.Sh NAME +.Nm sqlite3_close , +.Nm sqlite3_close_v2 +.Nd closing a database connection +.Sh SYNOPSIS +.In sqlite3.h +.Ft int +.Fo sqlite3_close +.Fa "sqlite3*" +.Fc +.Ft int +.Fo sqlite3_close_v2 +.Fa "sqlite3*" +.Fc +.Sh DESCRIPTION +The sqlite3_close() and sqlite3_close_v2() routines are destructors +for the sqlite3 object. +Calls to sqlite3_close() and sqlite3_close_v2() return SQLITE_OK +if the sqlite3 object is successfully destroyed and all associated +resources are deallocated. +.Pp +Ideally, applications should finalize all prepared statements, +close all BLOB handles, and finish all sqlite3_backup +objects associated with the sqlite3 object prior to attempting +to close the object. +If the database connection is associated with unfinalized prepared +statements, BLOB handlers, and/or unfinished sqlite3_backup objects +then sqlite3_close() will leave the database connection open and return +SQLITE_BUSY. +If sqlite3_close_v2() is called with unfinalized prepared statements, +unclosed BLOB handlers, and/or unfinished sqlite3_backups, it returns +SQLITE_OK regardless, but instead of deallocating the database +connection immediately, it marks the database connection as an unusable +"zombie" and makes arrangements to automatically deallocate the database +connection after all prepared statements are finalized, all BLOB handles +are closed, and all backups have finished. +The sqlite3_close_v2() interface is intended for use with host languages +that are garbage collected, and where the order in which destructors +are called is arbitrary. +.Pp +If an sqlite3 object is destroyed while a transaction is open, +the transaction is automatically rolled back. +.Pp +The C parameter to sqlite3_close(C) and sqlite3_close_v2(C) +must be either a NULL pointer or an sqlite3 object pointer obtained +from +.Fn sqlite3_open , +.Fn sqlite3_open16 , +or +.Fn sqlite3_open_v2 , +and not previously closed. +Calling sqlite3_close() or sqlite3_close_v2() with a NULL pointer argument +is a harmless no-op. +.Sh IMPLEMENTATION NOTES +These declarations were extracted from the +interface documentation at line 316. +.Bd -literal +SQLITE_API int sqlite3_close(sqlite3*); +SQLITE_API int sqlite3_close_v2(sqlite3*); +.Ed +.Sh SEE ALSO +.Xr sqlite3 3 , +.Xr sqlite3_backup 3 , +.Xr sqlite3_backup_init 3 , +.Xr sqlite3_blob 3 , +.Xr sqlite3_blob_close 3 , +.Xr sqlite3_finalize 3 , +.Xr sqlite3_open 3 , +.Xr sqlite3_stmt 3 , +.Xr SQLITE_OK 3 -- cgit v1.2.3