什么SQL可以用来列出表,以及在SQLite数据库文件中的这些表中的行-一旦我已经附加了它与SQLite 3命令行工具上的ATTACH命令?
当前回答
使用.help检查可用的命令。
.table
这个命令将显示当前数据库下的所有表。
其他回答
Use:
import sqlite3
TABLE_LIST_QUERY = "SELECT * FROM sqlite_master where type='table'"
我使用这个查询来获得它:
SELECT name FROM sqlite_master WHERE type='table'
在iOS中使用:
NSString *aStrQuery=[NSString stringWithFormat:@"SELECT name FROM sqlite_master WHERE type='table'"];
在SQLite命令行中有一个命令可用:
.tables ?PATTERN? List names of tables matching a LIKE pattern
它转换为以下SQL:
SELECT name FROM sqlite_master
WHERE type IN ('table','view') AND name NOT LIKE 'sqlite_%'
UNION ALL
SELECT name FROM sqlite_temp_master
WHERE type IN ('table','view')
ORDER BY 1
使用.da查看所有数据库-其中一个被称为“main”。
该数据库的表可以通过以下方式查看:
SELECT distinct tbl_name from sqlite_master order by 1;
附加的数据库需要在ATTACH语句中用AS选择前缀,例如aa (, bb, cc…),因此:
SELECT distinct tbl_name from **aa.sqlite_master** order by 1;
请注意,在这里您也可以获得视图。要排除这些,请添加:
where type = 'table'
在order之前
要显示所有表,使用
SELECT name FROM sqlite_master WHERE type = "table"
要显示所有行,我认为可以遍历所有表,并在每个表上执行SELECT *。但也许垃圾场才是你想要的?
推荐文章
- 在SQL server查询中将NULL替换为0
- 在SQL中修改表的模式名
- 如何在SQL Server 2005的一条语句中更新两个表?
- 如何创建临时表与SELECT * INTO tempTable从CTE查询
- 用于查找计数为>的记录的SQL查询
- “从Table1左连接Table2”和“从Table2右连接Table1”可以互换吗?
- SQLite并发访问
- 在SQL Server的选择语句中使用带TOP的变量,而不是动态的
- 自然连接和内部连接的区别
- MySQL现在()+1天
- 在SQL中转换月号到月名函数
- 不可重复读和幻影读的区别是什么?
- 改变一个varchar列的最大长度?
- 外键约束:何时使用ON UPDATE和ON DELETE
- 如何连接字符串与填充在sqlite