SQLITE_SESSION_OBJCONFIG_SIZE(3)

SQLITE_SESSION_OBJCONFIG_SIZE(3) | Library Functions Manual | SQLITE_SESSION_OBJCONFIG_SIZE(3)

# NAME

`SQLITE_SESSION_OBJCONFIG_SIZE`, `SQLITE_SESSION_OBJCONFIG_ROWID` — options for sqlite3session_object_config

# SYNOPSIS

`#include <sqlite3.h>`

`#define SQLITE_SESSION_OBJCONFIG_SIZE`
`#define SQLITE_SESSION_OBJCONFIG_ROWID`

# DESCRIPTION

The following values may passed as the the 2nd parameter to sqlite3session_object_config().
This option is used to set, clear or query the flag that enables the `sqlite3session_changeset_size`() API. Because it imposes some computational overhead, this API is disabled by default. Argument pArg must point to a value of type (int). If the value is initially 0, then the sqlite3session_changeset_size() API is disabled. If it is greater than 0, then the same API is enabled. Or, if the initial value is less than zero, no change is made. In all cases the (int) variable is set to 1 if the sqlite3session_changeset_size() API is enabled following the current call, or 0 otherwise.

It is an error (SQLITE_MISUSE) to attempt to modify this setting after the first table has been attached to the session object.
This option is used to set, clear or query the flag that enables collection of data for tables with no explicit PRIMARY KEY.

Normally, tables with no explicit PRIMARY KEY are simply ignored by the sessions module. However, if this flag is set, it behaves as if such tables have a column "_rowid_ INTEGER PRIMARY KEY" inserted as their leftmost columns.

It is an error (SQLITE_MISUSE) to attempt to modify this setting after the first table has been attached to the session object.

# IMPLEMENTATION NOTES

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

    #define SQLITE_SESSION_OBJCONFIG_SIZE  1
    #define SQLITE_SESSION_OBJCONFIG_ROWID 2

# SEE ALSO

sqlite3session_changeset_size(3)

January 24, 2024 | NetBSD 11.0