什么SQL可以用来列出表,以及在SQLite数据库文件中的这些表中的行-一旦我已经附加了它与SQLite 3命令行工具上的ATTACH命令?
当前回答
.tables和.schema“助手”函数不查找ATTACHed数据库:它们只查询SQLITE_MASTER表以查找“主”数据库。因此,如果你使用
ATTACH some_file.db AS my_db;
然后你需要做
SELECT name FROM my_db.sqlite_master WHERE type='table';
注意,临时表也不会用.tables显示:你必须列出sqlite_temp_master:
SELECT name FROM sqlite_temp_master WHERE type='table';
其他回答
要列出表格,您还可以这样做:
SELECT name FROM sqlite_master
WHERE type='table';
”。Schema " commando将列出可用的表及其行,通过显示用于创建上述表的语句:
sqlite> create table_a (id int, a int, b int); sqlite> .schema table_a CREATE TABLE table_a (id int, a int, b int);
试试PRAGMA table_info(table-name); http://www.sqlite.org/pragma.html#schema
要显示所有表,使用
SELECT name FROM sqlite_master WHERE type = "table"
要显示所有行,我认为可以遍历所有表,并在每个表上执行SELECT *。但也许垃圾场才是你想要的?
在SQLite数据库中查看表有几个步骤:
列出数据库中的表: .tables 列出表格的外观: . schema的表 打印整个表格: SELECT * FROM tablename; 列出所有可用的SQLite提示命令: .help
推荐文章
- 如何从一个查询插入多行使用雄辩/流利
- 如何连接列在Postgres选择?
- 有人可以对SQL查询进行版权保护吗?
- 数据库触发器是必要的吗?
- 如何知道MySQL表最近一次更新?
- 如何转储一些SQLite3表的数据?
- 如何创建一个SQL Server函数“连接”多行从一个子查询到一个单独的分隔字段?
- 在MySQL中的一个查询中更新多个具有不同值的行
- 在SQL中更新多个列
- 如何删除表中特定列的第一个字符?
- MySQL OR与IN性能
- 为什么我应该使用基于文档的数据库而不是关系数据库?
- 哪个更快/最好?SELECT *或SELECT columnn1, colum2, column3等
- 将值从同一表中的一列复制到另一列
- 什么是数据库池?