Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


SQLITE3_COLUMN_DATABASE_NAME(3)                       Library Functions Manual

NAME
     sqlite3_column_database_name, sqlite3_column_database_name16,
     sqlite3_column_table_name, sqlite3_column_table_name16,
     sqlite3_column_origin_name, sqlite3_column_origin_name16 - source of data
     in a query result

SYNOPSIS
     #include <sqlite3.h>

     const char *
     sqlite3_column_database_name(sqlite3_stmt*, int);

     const void *
     sqlite3_column_database_name16(sqlite3_stmt*, int);

     const char *
     sqlite3_column_table_name(sqlite3_stmt*, int);

     const void *
     sqlite3_column_table_name16(sqlite3_stmt*, int);

     const char *
     sqlite3_column_origin_name(sqlite3_stmt*, int);

     const void *
     sqlite3_column_origin_name16(sqlite3_stmt*, int);

DESCRIPTION
     These routines provide a means to determine the database, table, and
     table column that is the origin of a particular result column in SELECT
     statement.  The name of the database or table or column can be returned
     as either a UTF-8 or UTF-16 string.  The _database_ routines return the
     database name, the _table_ routines return the table name, and the
     origin_ routines return the column name.  The returned string is valid
     until the prepared statement is destroyed using sqlite3_finalize() or
     until the statement is automatically reprepared by the first call to
     sqlite3_step() for a particular run or until the same information is
     requested again in a different encoding.

     The names returned are the original un-aliased names of the database,
     table, and column.

     The first argument to these interfaces is a prepared statement.  These
     functions return information about the Nth result column returned by the
     statement, where N is the second function argument.  The left-most column
     is column 0 for these routines.

     If the Nth column returned by the statement is an expression or subquery
     and is not a column value, then all of these functions return NULL.
     These routines might also return NULL if a memory allocation error
     occurs.  Otherwise, they return the name of the attached database, table,
     or column that query result column was extracted from.

     As with all other SQLite APIs, those whose names end with "16" return
     UTF-16 encoded strings and the other functions return UTF-8.

     These APIs are only available if the library was compiled with the
     SQLITE_ENABLE_COLUMN_METADATA C-preprocessor symbol.

     If two or more threads call one or more column metadata interfaces for
     the same prepared statement and result column at the same time then the
     results are undefined.

IMPLEMENTATION NOTES
     These declarations were extracted from the interface documentation at
     line 4819.

     SQLITE_API const char *sqlite3_column_database_name(sqlite3_stmt*,int);
     SQLITE_API const void *sqlite3_column_database_name16(sqlite3_stmt*,int);
     SQLITE_API const char *sqlite3_column_table_name(sqlite3_stmt*,int);
     SQLITE_API const void *sqlite3_column_table_name16(sqlite3_stmt*,int);
     SQLITE_API const char *sqlite3_column_origin_name(sqlite3_stmt*,int);
     SQLITE_API const void *sqlite3_column_origin_name16(sqlite3_stmt*,int);

SEE ALSO
     sqlite3_finalize(3), sqlite3_step(3), sqlite3_stmt(3)

NetBSD 10.99                    August 24, 2023                   NetBSD 10.99