.Dd December 19, 2018 .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 .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 and 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
Parameter | Output Type | Description .Pp |
---|---|---|
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 |