diff options
Diffstat (limited to 'static/netbsd/man3/sqlite3_table_column_metadata.3')
| -rw-r--r-- | static/netbsd/man3/sqlite3_table_column_metadata.3 | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/static/netbsd/man3/sqlite3_table_column_metadata.3 b/static/netbsd/man3/sqlite3_table_column_metadata.3 new file mode 100644 index 00000000..4a304d21 --- /dev/null +++ b/static/netbsd/man3/sqlite3_table_column_metadata.3 @@ -0,0 +1,102 @@ +.Dd January 24, 2024 +.Dt SQLITE3_TABLE_COLUMN_METADATA 3 +.Os +.Sh NAME +.Nm sqlite3_table_column_metadata +.Nd extract metadata about a column of a table +.Sh SYNOPSIS +.In sqlite3.h +.Ft int +.Fo sqlite3_table_column_metadata +.Fa "sqlite3 *db" +.Fa "const char *zDbName" +.Fa "const char *zTableName" +.Fa "const char *zColumnName" +.Fa "char const **pzDataType" +.Fa "char const **pzCollSeq" +.Fa "int *pNotNull" +.Fa "int *pPrimaryKey" +.Fa "int *pAutoinc" +.Fc +.Sh DESCRIPTION +The sqlite3_table_column_metadata(X,D,T,C,....) routine returns information +about column C of table T in database D on database connection +X. +The sqlite3_table_column_metadata() interface returns SQLITE_OK and +fills in the non-NULL pointers in the final five arguments with appropriate +values if the specified column exists. +The sqlite3_table_column_metadata() interface returns SQLITE_ERROR +if the specified column does not exist. +If the column-name parameter to sqlite3_table_column_metadata() is +a NULL pointer, then this routine simply checks for the existence of +the table and returns SQLITE_OK if the table exists and SQLITE_ERROR +if it does not. +If the table name parameter T in a call to sqlite3_table_column_metadata(X,D,T,C,...) +is NULL then the result is undefined behavior. +.Pp +The column is identified by the second, third and fourth parameters +to this function. +The second parameter is either the name of the database (i.e. "main", +"temp", or an attached database) containing the specified table or +NULL. +If it is NULL, then all attached databases are searched for the table +using the same algorithm used by the database engine to resolve unqualified +table references. +.Pp +The third and fourth parameters to this function are the table and +column name of the desired column, respectively. +.Pp +Metadata is returned by writing to the memory locations passed as the +5th and subsequent parameters to this function. +Any of these arguments may be NULL, in which case the corresponding +element of metadata is omitted. +.Bd -ragged +.Pp + Parameter Output Type Description + 5th const char* Data type + 6th const char* Name of default collation sequence + 7th int True if column has a NOT NULL constraint + 8th int True if column is part of the PRIMARY KEY + 9th int True if column is AUTOINCREMENT +.Pp +.Ed +.Pp +The memory pointed to by the character pointers returned for the declaration +type and collation sequence is valid until the next call to any SQLite +API function. +.Pp +If the specified table is actually a view, an error code +is returned. +.Pp +If the specified column is "rowid", "oid" or "_rowid_" and the table +is not a WITHOUT ROWID table and an INTEGER PRIMARY KEY +column has been explicitly declared, then the output parameters are +set for the explicitly declared column. +If there is no INTEGER PRIMARY KEY column, then +the outputs for the rowid are set as follows: +.Bd -literal +data type: "INTEGER" collation sequence: "BINARY" not null: 0 primary +key: 1 auto increment: 0 +.Ed +.Pp +This function causes all database schemas to be read from disk and +parsed, if that has not already been done, and returns an error if +any errors are encountered while loading the schema. +.Sh IMPLEMENTATION NOTES +These declarations were extracted from the +interface documentation at line 7048. +.Bd -literal +SQLITE_API int sqlite3_table_column_metadata( + sqlite3 *db, /* Connection handle */ + const char *zDbName, /* Database name or NULL */ + const char *zTableName, /* Table name */ + const char *zColumnName, /* Column name */ + char const **pzDataType, /* OUTPUT: Declared data type */ + char const **pzCollSeq, /* OUTPUT: Collation sequence name */ + int *pNotNull, /* OUTPUT: True if NOT NULL constraint exists */ + int *pPrimaryKey, /* OUTPUT: True if column part of PK */ + int *pAutoinc /* OUTPUT: True if column is auto-increment */ +); +.Ed +.Sh SEE ALSO +.Xr sqlite3 3 |
