I am trying to create a new item in database but getting that error
android.database.sqlite.SQLiteException: no such column: _id (code 1): , while compiling: SELECT _id, brand, lastused, model FROM rifle WHERE _id = -1
So here is part of my Databasehelper
public static final String TABLE_RIFLE = "rifle";
public static final String COLUMN_RIFLE_ID = "_id";
public static final String COLUMN_RIFLE_BRAND = "brand";
public static final String COLUMN_RIFLE_LASTUSED = "lastused";
public static final String COLUMN_RIFLE_USAGE = "usage";
public static final String COLUMN_RIFLE_MODEL = "model";
...
private static final String CREATE_TABLE_RIFLE =
"create table " + TABLE_RIFLE
+ " (" +COLUMN_RIFLE_ID+ " integer primary key autoincrement,"
+ COLUMN_RIFLE_BRAND + " string,"
+ COLUMN_RIFLE_LASTUSED +" integer not null,"
+ COLUMN_RIFLE_USAGE +" integer not null,"
+ COLUMN_RIFLE_MODEL +" string);";
...
public void onCreate(SQLiteDatabase db) {
db.execSQL(CREATE_TABLE_RIFLE);}
...
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_RIFLE);
onCreate(db);}
And part of my method's class in wich error occur
public Rifle createRifle(String Brand, int Lastused, int Usage, String Model) {
ContentValues values = new ContentValues();
values.put(DatabaseHelper.COLUMN_RIFLE_BRAND, Brand);
values.put(DatabaseHelper.COLUMN_RIFLE_LASTUSED, Lastused);
values.put(DatabaseHelper.COLUMN_RIFLE_USAGE, Usage);
values.put(DatabaseHelper.COLUMN_RIFLE_MODEL, Model);
long insertId = mDatabase.insert(DatabaseHelper.TABLE_RIFLE, null, values);
Cursor cursor = mDatabase.query(DatabaseHelper.TABLE_RIFLE, mAllColums,DatabaseHelper.COLUMN_RIFLE_ID + " = " + insertId, null, null, null, null);
Rifle newRifle = cursorToRifle(cursor);
cursor.close();
return newRifle;
}
is there an error in my Helper or im my method?
Aucun commentaire:
Enregistrer un commentaire