如何从命令行工具计算sqlite中的列数

时间:2013-03-01 17:07:03

标签: database sqlite

我正在尝试使用sqlite命令行工具计算sqlite数据库中的列。为了测试它,我创建了一个这样的示例数据库:

c:\>sqlite.exe mydb.sqlite "create table tbl1(one varchar(10), two smallint);"

现在假设我不知道表tbl1有2列,如何使用命令行工具中的查询找到它?

2 个答案:

答案 0 :(得分:4)

执行命令

pragma table_info(yourTableName)

请参阅:

http://www.sqlite.org/pragma.html#pragma_table_info

了解更多详情。

答案 1 :(得分:0)

这是我在Linux下发现有用的方法。创建一个bash脚本文件columns.sh并确保它具有执行权限并复制 - 粘贴以下代码。

columns() { for table in $(echo ".tables" | sqlite3 $1); do echo "$table $(echo "PRAGMA table_info($table);" | sqlite3 $1 | wc -l)"; done ;}

在第一行的终端中键入以下命令以返回结果

 $  columns <database name>
    <table1>          <# of columns>
    <table2>          <# of columns>

注意:确保数据库未损坏或加密。

来源:http://www.quora.com/SQLite/How-can-I-count-the-number-of-columns-in-a-table-from-the-shell-in-SQLite

<强>更新

这是Python脚本解决方案的一个有趣的URL

http://pagehalffull.wordpress.com/2012/11/14/python-script-to-count-tables-columns-and-rows-in-sqlite-database/