2011-04-24 83 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

相關問題