2013-03-16 102 views
0

我一直堅持如何在sqlite數據庫中創建目錄結構。在數據庫中創建目錄結構並在其中存儲數據

private void listFilesForFolder(Entry list) throws DropboxException 
    { 
     for (Entry ent : list.contents) 
     { 
      if (ent.isDir) 
      { 
       // Log.i("List",ent.fileName()); 
       // Log.i("Path",ent.path); 
      Entry list1 = mDBApi.metadata(ent.path, 1000, null, true,null); 
      listFilesForFolder(list1); 
      } 
      else 
      { 
       Log.i("List", ent.fileName()); 
       // Log.i("Path",ent.path); 
      } 
     } 
} 

這通過我從Dropbox帳戶中的Android使用Dropbox的核心API獲取所有文件和文件夾列表遞歸函數。

現在我怎麼能將這些數據存儲在類似結構的目錄中的sqlite數據庫?

回答

1
CREATE TABLE entry (
    _id INTEGER PRIMARY KEY, 
    name TEXT, 
    parent_id INTEGER DEFAULT 0, 
    is_dir INTEGER DEFAULT 0, 
    CONSTRAINT fk_parent FOREIGN KEY (parent_id) REFERENCES entry(_id) 
); 
  • 兩個目錄和文件都保存在該表中。
  • 如果一個目錄或文件有一個父級,它的父級的_id被保存到parent_id
  • 如果條目是is_dir字段設置爲1的目錄中,否則爲0。
+0

現在我的問題是如何將我存儲在數據庫中的這些數據。我的意思是SQL queries..which查詢寫在如果和其他塊,以便目錄結構保持.. 我感到困惑,因爲遞歸函數..感謝 – 2013-03-19 05:53:47

+0

我編輯我的答案。我的第一個答案沒有考慮目錄內的目錄。這個呢。 – kdehairy 2013-03-19 09:19:14

+1

關於你關於遞歸函數的問題,請打開一個新的問題,並在這裏引用它。謝謝。 – kdehairy 2013-03-19 09:24:11