SQLITE3_LOG(3) | Library Functions Manual | SQLITE3_LOG(3)

# NAME

`sqlite3_log` — error logging interface

# SYNOPSIS

`#include <sqlite3.h>`

void
`sqlite3_log`(int iErrCode, const char *zFormat, ...);

# DESCRIPTION

The `sqlite3_log`() interface writes a message into the error log established by the SQLITE_CONFIG_LOG option to `sqlite3_config`(). If logging is enabled, the zFormat string and subsequent arguments are used with `sqlite3_snprintf`() to generate the final output string.

The sqlite3_log() interface is intended for use by extensions such as virtual tables, collating functions, and SQL functions. While there is nothing to prevent an application from calling sqlite3_log(), doing so is considered bad form.

The zFormat string must not be NULL.

To avoid deadlocks and other threading problems, the sqlite3_log() routine will not use dynamically allocated memory. The log message is stored in a fixed-length buffer on the stack. If the log message is longer than a few hundred characters, it will be truncated to the length of the buffer.

# IMPLEMENTATION NOTES

These declarations were extracted from the interface documentation at line 9489.

    SQLITE_API void sqlite3_log(int iErrCode, const char *zFormat, ...);

# SEE ALSO

sqlite3_config(3), sqlite3_mprintf(3), SQLITE_CONFIG_SINGLETHREAD(3)

January 24, 2024 | NetBSD 11.0