From 63847496f14c813a5d80efd5b7de0f1294ffe1e3 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 13 Apr 2024 16:07:11 +0200 Subject: Adding upstream version 3.45.1. Signed-off-by: Daniel Baumann --- www/c3ref/table_column_metadata.html | 205 +++++++++++++++++++++++++++++++++++ 1 file changed, 205 insertions(+) create mode 100644 www/c3ref/table_column_metadata.html (limited to 'www/c3ref/table_column_metadata.html') diff --git a/www/c3ref/table_column_metadata.html b/www/c3ref/table_column_metadata.html new file mode 100644 index 0000000..927dc65 --- /dev/null +++ b/www/c3ref/table_column_metadata.html @@ -0,0 +1,205 @@ + + + + + +Extract Metadata About A Column Of A Table + + + +
+ + + +
+
+Small. Fast. Reliable.
Choose any three. +
+ + +
+
+ + + +
+
+
+ + +
+

SQLite C Interface

+

Extract Metadata About A Column Of A Table

+
+
+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 */
+);
+
+

+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.

+ +

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.

+ +

The third and fourth parameters to this function are the table and column +name of the desired column, respectively.

+ +

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.

+ +

+ +
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 +
+

+ +

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.

+ +

If the specified table is actually a view, an error code is returned.

+ +

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:

+ +

+data type: "INTEGER"
+collation sequence: "BINARY"
+not null: 0
+primary key: 1
+auto increment: 0
+

+ +

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. +

See also lists of + Objects, + Constants, and + Functions.

+ -- cgit v1.2.3