簡體   English   中英

Android未在數據庫中創建另一個表

[英]Android not making another table in the database

這是我在數據庫創建中的代碼

public void onCreate(SQLiteDatabase db) {

    db.execSQL("create table " + TBL_NAME_Arth + " (ID INTEGER PRIMARY KEY AUTOINCREMENT," +
            "RECIPE_NAME TEXT,ING_1 TEXT,ING_2 TEXT,ING_3 TEXT,ING_4 TEXT,ING_5 TEXT,ING_6 TEXT,ING_7 TEXT,ING_8 TEXT,ING_9 TEXT,ING_10 TEXT+" +
            "ING_12 TEXT,ING_12 TEXT,ING_13 TEXT,ING_14 TEXT,ING_15 TEXT,ING_16 TEXT,ING_17 TEXT,ING_18 TEXT,ING_19 TEXT,ING_20 TEXT)");

    db.execSQL("create table " + TBL_NAME_Dia + " (ID INTEGER PRIMARY KEY AUTOINCREMENT," +
            "RECIPE_NAME TEXT,ING_1 TEXT,ING_2 TEXT,ING_3 TEXT,ING_4 TEXT,ING_5 TEXT,ING_6 TEXT,ING_7 TEXT,ING_8 TEXT,ING_9 TEXT,ING_10 TEXT+" +
            "ING_12 TEXT,ING_12 TEXT,ING_13 TEXT,ING_14 TEXT,ING_15 TEXT,ING_16 TEXT,ING_17 TEXT,ING_18 TEXT,ING_19 TEXT,ING_20 TEXT)");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    onCreate(db);
    db.execSQL("DROP TABLE IF EXISTS " + TBL_NAME);
    db.execSQL("DROP TABLE IF EXISTS " + TBL_NAME_Arth);
    db.execSQL("DROP TABLE IF EXISTS " + TBL_NAME_Dia);

}

此代碼用於調用創建myDb = new DatabaseHelper(this);

移動行onCreate(db); onUpgrade()方法中的drop語句之后。 當前,您正在創建表並將其刪除。

但是,在onUpgrade()方法中,應首先刪除現有表,然后再創建新表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM