Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

SQLiteException: near "" :syntax error (code 1) while compiling

I have this error while compiling and I don´t know why, can anyone help me?

public static final String TABLE_BEERS = "cervezas";

// Contacts Table Columns names
public static final String KEY_NAME = "_id";
public static final String KEY_COMPANY = "company";
public static final String KEY_TYPE = "type";
public static final String KEY_ALCOHOL = "alcohol";


public DatabaseHandler(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
    // TODO Auto-generated constructor stub
}

@Override
public void onCreate(SQLiteDatabase db) {

    String query = String.format("CREATE TABLE %s (%s STRING PRIMARY KEY,%s TEXT, %s TEXT, %s TEXT);", 
            TABLE_BEERS, KEY_NAME, KEY_COMPANY,
            KEY_TYPE, KEY_ALCOHOL);

    /*
    String CREATE_BEER_TABLE = "create table " + TABLE_BEERS + "("
            + KEY_NAME + " STRING PRIMARY KEY," 
            + KEY_COMPANY + " TEXT,"
            + KEY_TYPE + " TEXT," 
            + KEY_ALCOHOL + " TEXT )";*/
    db.execSQL(query);

This is for create the table

public List<Cervezas> getCompanyCervezas(String compania){

            List<Cervezas> cervezasList = new ArrayList<Cervezas>();
            // Select All Query
            String selectQuery = "SELECT _id, type, alcohol FROM " + TABLE_BEERS + " WHERE company=" + compania;

            SQLiteDatabase db = this.getReadableDatabase();
            Cursor cursor = db.rawQuery(selectQuery, null);

LogCat

android.database.sqlite.SQLiteException: no such column : Alean (code 1): , while compiling: SELECT _id, type, alcohol FROM cervezas WHERE company=Alean

What is happening?

like image 661
user2202906 Avatar asked Mar 23 '13 18:03

user2202906


2 Answers

try below code:-

String selectQuery = "SELECT _id, type, alcohol FROM " + TABLE_BEERS + " WHERE company= ' " + compania+" ' ";

you miss single quotes ..

like image 188
duggu Avatar answered Oct 17 '22 22:10

duggu


Text column values must pass in single quotes. Try following

String selectQuery = "SELECT _id, type, alcohol FROM " + TABLE_BEERS + " WHERE company= '" + compania +"'";
like image 32
Aswin Avatar answered Oct 18 '22 00:10

Aswin