2011-01-19 6 views
1

これは、Adobe AIR HTML/JSアプリケーション用です。 bodyタグonLoadから次の関数を実行しています。これは正常に動作するようですが、これを行うためのベストプラクティスの方法はありますか?アプリケーションを起動するたびにDBをリセットする必要があります。Adob​​e AIRアプリケーションでsqlite DBをリセットする方法

function loadAirSql(){ 

    this.conn = new air.SQLConnection(); 
    var folder = air.File.applicationStorageDirectory; 
    var dbFile = folder.resolvePath("localDBFile.db"); 
    conn.open(dbFile); 

    //make sure DB is reset with each session 
    conn.begin(); 
    var dropStmt = new air.SQLStatement(); 
    dropStmt.sqlConnection = conn; 
    dropStmt.text = "DROP TABLE IF EXISTS myTable"; 
    dropStmt.execute(); 
    conn.commit(); 

    //recreate the sql table 
    conn.begin(); 
    var createStmt = new air.SQLStatement(); 
    createStmt.sqlConnection = conn; 
    createStmt.text = "CREATE TABLE IF NOT EXISTS myTable (myTableID INTEGER PRIMARY KEY AUTOINCREMENT, myColumn TEXT)"; 
    createStmt.execute(); 
    conn.commit(); 

}; 

答えて

0

あなたのアプローチは、すべてのデータベースをリセットするためのベストプラクティスです。私はちょうどあなたがデータを保持していない場合、ちょうどメモリ内の辞書にあなたのデータを保持するのは簡単ではないだろうかと思っていますか?

確かに、たくさんのSQLを書くことからあなたを救うでしょう:)

関連する問題