SQLite C 接口

结果集中的列名

const char *sqlite3_column_name(sqlite3_stmt*, int N);
const void *sqlite3_column_name16(sqlite3_stmt*, int N);

这些例程返回分配给SELECT语句 结果集中特定列的名称。sqlite3_column_name() 接口返回一个指向以零结尾的 UTF-8 字符串的指针,而 sqlite3_column_name16() 返回一个指向以零结尾的 UTF-16 字符串的指针。第一个参数是 实现SELECT语句的准备语句。第二个参数是列号。最左边的列是数字 0。

返回的字符串指针是有效的,直到准备好的语句sqlite3_finalize()销毁,或者直到语句被第一次调用sqlite3_step()为特定运行自动重新准备,或者直到下一次调用 sqlite3_column_name() 或 sqlite3_column_name16()同一列。

如果 sqlite3_malloc() 在任一例程的处理过程中失败(例如在从 UTF-8 到 UTF-16 的转换过程中),则返回 NULL 指针。

结果列的名称是该列的“AS”子句的值(如果有 AS 子句)。如果没有 AS 子句,则列的名称是未指定的,并且可能从一个 SQLite 版本到下一个版本更改。

另请参阅 对象常量函数的列表。