2016-06-16 70 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+"=?";