在sqlite3中获取列名

kee*_*eda 6 c c++ sqlite

我想打印我的sql表内容,因此,我想从表中检索列名.我遇到的一个解决方案是:

SELECT sql FROM sqlite_master WHERE tbl_name = 'table_name' AND type = 'table'
Run Code Online (Sandbox Code Playgroud)

但看起来我将不得不解析结果.

另一个建议是使用:

PRAGMA table_info(table_name);
Run Code Online (Sandbox Code Playgroud)

但是下面的sqlite页面建议不要使用它:http: //www.sqlite.org/pragma.html#pragma_full_column_names

有没有办法实现这一目标.还有什么是使用的语法

PRAGMA table_info(table_name);
Run Code Online (Sandbox Code Playgroud)

以上解决方案已从此处获取

Wes*_*Wes 6

由于您的问题已被标记,c我假设您可以访问SQLite C API.如果使用从您希望的表中选择的prepare_v2函数之一创建准备语句,则可以使用sqlite3_column_name获取每列的名称.