2016-07-16 3 views
2

こんにちは私は自分のアンドロイドアプリでデータベースに複数のテーブルを作成する必要がありました。私DBhelperクラスで私は私のテーブルを作成するには、このような何かsqliteで複数のテーブルを作成する

私のテーブル名がTABLE_AREA =「エリア」

public void onCreate(SQLiteDatabase db) { 
    String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_USRS + "(" 
      + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT ," + KEY_NAME + " TEXT," 
      + KEY_E_ADDR + " TEXT," + KEY_PASS + " TEXT" + ")"; 
    String CREATE_AREA_TABLE = "CREATE TABLE " + TABLE_AREA + "(" + KEY_AID + " INTEGER PRIMARY KEY AUTOINCREMENT ," + KEY_ANAME + " TEXT" + ")"; 

    db.execSQL(CREATE_CONTACTS_TABLE); 
    db.execSQL(CREATE_AREA_TABLE); 


} 

で、レコードを追加するとき、私はこの

public void addNArea(Area are) 
{ 
    SQLiteDatabase db = this.getWritableDatabase(); 

    ContentValues values = new ContentValues(); 
    values.put(KEY_ANAME, are.getArea()); 
    db.insert(TABLE_AREA, null, values); 
    db.close(); 
} 

のようなものを持っているを持っています問題はそれは私がテーブルの名前の領域を持っていないと言っているということです。どんなアイデアが間違っているの?

+0

..あなたを助けるより私のSQLiteのクラスの例を参照するために 'execSQL'が呼ばれているのですか?あなたが任意のエラーログを取得しないでくださいは、 –

+0

私は何のエラーも出なかった。私は '(1)no such table:area' – BourneShady

答えて

0

あなたのコードでは何も考えられないことが分かった後、あなたのアプリケーションデータをクリアして、再びテーブルを作成してみてください。すでに存在するテーブルがあれば、それは新しいものを作成しません。

それは SQLite Database Example

関連する問題