user4901016
user4901016

Reputation: 11

SQLite no such column error

Hi can anyone please help me with below error in android sqlite ? really appreciate!

Caused by: android.database.sqlite.SQLiteException: no such column: House (code 1): , while compiling: select * from category where category =House

below is part of my code in which I have inserted "House" in the table

public void onCreate(SQLiteDatabase db) {

    String CREATE_CATEGORY_TABLE = "CREATE TABLE category( " +
            "_id INTEGER PRIMARY KEY AUTOINCREMENT, " +
            "category TEXT UNIQUE)";
        db.execSQL(CREATE_CATEGORY_TABLE);
 }

public void addCategory(String name){
    SQLiteDatabase db = this.getWritableDatabase();
    ContentValues cv = new ContentValues();
    cv.put("category", name);
    db.insert(CATEGORY_TABLE, // table
            null,  //nullColumnHack
            cv); // key/value -> keys = column names/ values = column values
   db.close();}

public List getCategory(){
    List<String> list=new LinkedList();
    SQLiteDatabase db = this.getReadableDatabase();
    Cursor cursor =
            db.rawQuery("select * from category where category =house"  , null);

    // 3. if we got results get the first one
    if (cursor != null)
        cursor.moveToFirst();
    do {
        String s = (cursor.getString(1));

        list.add(s);
    }while (cursor.moveToNext());
    return list;

}

Upvotes: 1

Views: 344

Answers (2)

Deepali Maniyar
Deepali Maniyar

Reputation: 149

In my case error was in trigger I wrote on table insert and update

Upvotes: 0

inmyth
inmyth

Reputation: 9050

You need to wrap house with single quotes

db.rawQuery("select * from category where category = 'house'"  , null);

Upvotes: 1

Related Questions