如何在android中使用rawQuery
我有一个包含3列的数据库表:id,name,permission。
它看起来像这样:
1漫画的乐趣
2沟通谈话
3漫画手表
我试图获得名称是漫画的权限。 我在我的数据库类(AppData.java)中使用以下代码:
private final static String DB_NAME = "safety_app_database"; // the name of our database
private final static int DB_VERSION = 1; // the version of the database
// the names for our database columns
private final String TABLE_NAME = "permissions_table";
private final String ID = "id";
private final String NAME = "name";
private final String PERMISSION = "permission";
和方法
public Cursor getData(){
return db.rawQuery("SELECT permission FROM permissions_table WHERE name = 'Comics', null);
}
我在我的主类(safety.java)中调用它。 AppData引用AppData.java
appData.getData();
这是做到这一点的正确方法吗? 我不确定,每当我尝试调用sql查询时它都会给我一个错误。
一个错字错误,你没有关闭sql字符串"
。试试这个。
return db.rawQuery("SELECT permission FROM permissions_table WHERE name = 'Comics' ", null);
[编辑:JAR属于'Android 2.2',不允许修改其条目上的源附件]
该类文件的Jar会触发容器Android 2.0.1,该容器不允许修改
不需要原始查询。 你可以使用推荐的SQLiteDatabase查询方法之一,它看起来像这样:
db.query("permissions_table", new String [] {permission}, "name = 'Comics'", null, null, null, null);
尝试以下方法:
public Cursor getData(String arg) {
return db.rawQuery("SELECT permission FROM `permissions_table` WHERE name ="+arg, null);
}
然后,用这个正确的参数调用上面的方法:
Cursor cursor;
cursor = getData ( "Comic" );
链接地址: http://www.djcxy.com/p/52083.html
上一篇: how to use rawQuery in android
下一篇: C++ proxy class