Использование PRAGMA в качестве источников в SQLite при получении имен столбцов

Проблема:

Я хочу выполнить эту операцию

select name from pragma table_info(my_awesome_table)

Однако он дает синтаксическую ошибку. У меня есть подозрительное подозрение, что это возможно, но он, похоже, не документируется как используемый в SELECT документах с sqlite.

Ответ 1

Начиная с SQLite 3.16.0 мы можем использовать функции PRAGMA

sqlite> create table my_table (a int, b TEXT);
sqlite> .headers ON
sqlite> .mode columns
sqlite> pragma table_info(my_table);
cid         name        type        notnull     dflt_value  pk
----------  ----------  ----------  ----------  ----------  ----------
0           a           int         0                       0
1           b           TEXT        0                       0
sqlite> select name from pragma_table_info('my_table');
name
----------
a
b