0

私は2 databaseerror no such table not foundを使用したプロジェクトに参加しています。1つは完全に機能していますが、もう1つはエラーを示しています。

これが私のコードです

public void onCreate(SQLiteDatabase db) {
    // TODO Auto-generated method stub
    String CREATE_ADDRESS = " CREATE TABLE " + TABLE_ADDRESS  + "(" + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"+ KEY_STATE + " TEXT," + KEY_CITY + " TEXT," + KEY_ZIPCODE + " TEXT," + KEY_STREET + " TEXT," + KEY_DOOR + " TEXT,"+ ");";      
    try{
        db.execSQL(CREATE_ADDRESS);
    }catch (SQLException e)
    {
        e.printStackTrace();
    }
}

そして、このコードを使用してデータを挿入しようとしました

public void addAddress(AddressList address)
{
    SQLiteDatabase db = this.getWritableDatabase();
    ContentValues values = new ContentValues();
    values.put(KEY_STATE, address.getState());
    values.put(KEY_CITY, address.getCity());
    values.put(KEY_ZIPCODE, address.getZipcode());
    values.put(KEY_STREET, address.getStreet());
    values.put(KEY_DOOR, address.getDoor());
    db.insert(TABLE_ADDRESS,null, values);

    db.close();
}
4

3 に答える 3

0

最後の列に,&セミコロンを含めました。;最後に削除してみてください。最後にエラーが修正される場合があります,;

public void onCreate(SQLiteDatabase db) {
 // TODO Auto-generated method stub
 String CREATE_ADDRESS = " CREATE TABLE " + TABLE_ADDRESS  + "(" + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"+ KEY_STATE + " TEXT," + KEY_CITY + " TEXT," + KEY_ZIPCODE + " TEXT," + KEY_STREET + " TEXT," + KEY_DOOR + "  TEXT" + ")";      
 try{
     db.execSQL(CREATE_ADDRESS);
 }catch (SQLException e)
 {
     e.printStackTrace();
 }
}
于 2016-08-30T02:01:06.833 に答える
0

,最後の TEXT の後に create table 構文に余分な(コンマ) があります。create table の構文では無効であるため、削除する必要があります。

これを使って

String CREATE_ADDRESS = " CREATE TABLE " + TABLE_ADDRESS  + "(" + KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"+ KEY_STATE + " TEXT," + KEY_CITY + " TEXT," + KEY_ZIPCODE + " TEXT," + KEY_STREET + " TEXT," + KEY_DOOR + " TEXT"+ ");";
于 2013-04-03T11:13:37.573 に答える
0

DMLステートメントが正しくないため、 2 番目のテーブルが作成されません。エラーの原因となるステートメントから最後のコンマを削除する必要があります。テーブルの最後の列の後ろにカンマを使用することはできません。これは最後の列だからです。

+ KEY_DOOR + " TEXT"+ ");
于 2013-04-03T11:13:40.053 に答える