我正在调用 selectQuery。
public Cursor selectQuery ( final String queryString) {
try {
return getReadOnlySQLiteDatabase().rawQuery( queryString, null);
} catch ( Exception e ) {
Logs.show(e);
return null;
} catch ( Error e ) {
Logs.show(e);
return null;
} finally {
}
}
对函数的调用是
c = LiveApplication.getDatabaseWrapper().selectQuery( "SELECT url FROM root_resource where resource_name = 'sports' ");
当我这样做时,我得到了 Reached MAX size for compiled-sql statement cache for database 的异常。请更改您的 sql 语句以使用“?” 对于 bindargs,而不是使用实际值
所以我修改了我的代码
public Cursor selectQuery ( final String queryString, final String [] whereArgs) {
try {
Log.e("123", "Inside select query----"+whereArgs[0]);
return getReadOnlySQLiteDatabase().rawQuery( queryString, whereArgs);
} catch ( Exception e ) {
Logs.show(e);
return null;
} catch ( Error e ) {
Logs.show(e);
return null;
} finally {
}
}
电话变成了:
c = LiveApplication.getDatabaseWrapper().selectQuery( "SELECT url FROM root_resource where resource_name =?", new String[]{"sports"});
在此之后,我什么也得不到。我的错误是什么?