2015-10-16 30 views
0

我需要在Android應用程序中創建SQL數據庫。在這裏我的代碼:Android:使用默認值的SQL數據庫

@Override 
public void onCreate(SQLiteDatabase database) { 
    database.execSQL(createTable(FeedColumns.TABLE_NAME, FeedColumns.COLUMNS)); 
    database.execSQL(createTable(FilterColumns.TABLE_NAME, FilterColumns.COLUMNS)); 
    database.execSQL(createTable(EntryColumns.TABLE_NAME, EntryColumns.COLUMNS)); 
    database.execSQL(createTable(TaskColumns.TABLE_NAME, TaskColumns.COLUMNS)); 

private String createTable(String tableName, String[][] columns) { 
    if (tableName == null || columns == null || columns.length == 0) { 
     throw new IllegalArgumentException("Invalid parameters for creating table " + tableName); 
    } else { 
     StringBuilder stringBuilder = new StringBuilder("CREATE TABLE "); 

     stringBuilder.append(tableName); 
     stringBuilder.append(" ("); 
     for (int n = 0, i = columns.length; n < i; n++) { 
      if (n > 0) { 
       stringBuilder.append(", "); 
      } 
      stringBuilder.append(columns[n][0]).append(' ').append(columns[n][1]); 
     } 
     return stringBuilder.append(");").toString(); 
    } 
} 

如何在創建時填充此數據庫? 謝謝。

+0

你是什麼意思的「在創作」? –

回答

0

你的意思是你想從一個非空的數據庫開始,但有一些內容?您可以通過在計算機上創建所需數據庫然後將其放入項目資產/文件夾中來實現。然後,您必須在應用程序啓動時將其複製到正確的位置。

因爲你需要。 Android的SQLiteAssetHelper

版本的Android輔助類使用應用程序的原始資產檔案管理數據庫的建立和版本 管理。

這個類爲開發人員提供一種簡單的方式運送他們的Android 應用程序與現有的SQLite數據庫(也可以預先填入 數據),並管理其初始創建和任何升級需要 與後續版本發行。

當然,如果你想寫一些代碼,你可以沒有這個庫,做你自己的事情。