2011-04-24 79 views
0

我对从应用程序数据库中显示表格做了一些研究。所有的教程都声明这个命令“slite> .tables”会显示它们,但我总是得到的回应是“.tables”。我正在使用Android 2.2虚拟设备。我可以看到我的数据库:#sqlite3 data/data/my_package/databases/X.db。我得到这个命令后:在Android模拟器中无法从我的数据库中查看表格

SQLite version 3.6.22
Enter “.help” for instructions
Enter SQL statements terminated with a “;”
sqlite> .tables

响应是“.tables”,而不是数据库中的表。我知道我正在创建这些表格,因为在应用程序中我可以看到这些信息。 我一定在做错事,只是看不到。有人也有这个错误,并找到合理的解释?

+0

我想你需要运行一些SQL从只需用” .tables的作品对我来说... – 2011-04-24 12:17:44

+0

描述表。这很奇怪。如果我运行上面的命令,我得到这个响应:“SELECT:not found”,如果我像这样运行命令“#sqlite3从sqlite_master选择名称where type ='table'order by order;”我得到了这个结果“sqlite3 select name from sqlite_master where type ='table'order by order; sqlite3:错误:太多选项:”from“ 使用-help选项列表。 – 2011-04-24 12:23:25

回答

1

这应该是一个等效的语句:

SELECT name FROM sqlite_master WHERE type='table' ORDER BY name; 
+0

嗯数据库 – test 2011-04-24 12:40:09

+0

从命令提示符调用'sqlite3 data/data/my_package/databases/X.db'后,在sqlite提示符处尝试“CREATE TABLE tmp(temp text);'。它是否会将您无错地返回到sqlite提示符,还是它会告诉您它无法打开数据库?如果是后者,数据库的路径是错误的。如果前者,请尝试我从sqlite提示符给你的第一个select语句; tmp出现了吗? – 2011-04-24 13:29:29

+0

我运行create table tmp命令,并找到“create:not found”。想知道为什么数据库的路径不正确。如果我想查看所有包,#ls data/data /我可以在那里看到我的项目,并且#ls data/data/package ../数据库我得到数据库的名称。并在该命令之后,我正在尝试创建tmp表或从上面选择sql。 – test 2011-04-24 13:55:14

相关问题