2016-06-16 66 views
0

我用這個java類來創建一個數據庫:Android的SQL查詢語法

public class DBhelper extends SQLiteOpenHelper { 

private static final String DB_NAME = "grades.db"; 
private static final int DB_VERSION = 1; 
public static final String TABELLA_RICETTE = "TabellaRicette"; 
public static final String COL_ID="ColonnaId"; 
public static final String COL_NOME="ColonnaNome"; 
public static final String COL_TIPO = "ColonnaTipo"; 
public static final String COL_IMMAGINE = "ColonnaImmagine"; 
public static final String COL_ATTRIBUTI="ColonnaAttributi"; 
public static final String COL_INGREDIENTI = "ColonnaIngredienti"; 
public static final String COL_DIFFICOLTA="ColonnaDifficolta"; 
public static final String COL_DESCRIZIONE="ColonnaDescrizione"; 

public DBhelper(Context context){ 
    super(context, DB_NAME, null, DB_VERSION); 
} 

@Override 
public void onCreate(SQLiteDatabase db) { 
    String sql_tab = "create table " + TABELLA_RICETTE + "(" + 
      COL_ID + " integer primary key autoincrement, " + 
      COL_NOME + " text not null, " + 
      COL_TIPO + " text not null, " + 
      COL_IMMAGINE + " text not null, " + 
      COL_ATTRIBUTI + " text not null, " + 
      COL_INGREDIENTI + " text not null, " + 
      COL_DIFFICOLTA + " text not null, " + 
      COL_DESCRIZIONE + " text not null " + 
      ");"; 
    db.execSQL(sql_tab); 
} 

@Override 
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
} 

我用這個函數來獲取數據庫中的所有信息:

public Cursor get_all() { 
    return getWritableDatabase().query(TABELLA_RICETTE, null, null, null, null, null, null); 
} 

現在我會做出更選擇具有COL_TIPO中的特定String s1COL_DIFFICOLTA中的String s2的所有元素。

我試着寫一些東西,但也許我的語法錯了。

你能幫助我使用這個功能嗎?

​​
+0

那麼究竟什麼是這裏的問題? –

回答

1

COL_TIPO不是列的名稱,但包含列名稱的符號的名稱。

你必須把符號值到SQL字符串:

String whereClause = COL_TIPO+"=? AND "+COL_DIFFICOLTA+"=?";