sqlite如何知道从PRAGMA“查询”返回的列的名称是什么?

时间:2014-06-23 13:24:20

标签: sqlite schema pragma

我想从一个数据库执行数据复制到另一个数据库,但我想只在包含" unit_id"的表上执行此操作。柱。

我以为我可以使用PRAGMA table_info(table_name)来帮助我识别表" table_name"列#34; unit_id"。

我阅读了文档,并意识到我可以查看" name"柱。但是如果没有文档,怎么能知道从PRAGMA用法返回的列名?

有什么像.schema"表名"我可以在PRAGMA结果上使用?

示例:

PRAGMA table_info(units);

返回:

0|id|INTEGER|1||1
1|unit_type_id|INTEGER|1||0
2|site_id|INTEGER|1||0
3|modbus_address|INTEGER|1||0
4|Name|TEXT|1||0
5|Description|TEXT|0||0
6|Needs_Download|INTEGER|1||0
7|needed_reset_apps|INTEGER|0||0

但我怎么知道哪一列是什么?!

谢谢, 吉姆。

1 个答案:

答案 0 :(得分:0)

与普通查询一样,PRAGMA table_info返回的数据具有列名:

sqlite> .header on
sqlite> pragma table_info(units);
cid|name|type|notnull|dflt_value|pk
0|id|INTEGER|0||1
1|unit_id|INTEGER|0||0
2|etc.|FLUFFY BUNNIES|0||0

列的含义记录在the documentation