我必须做什么来实现的SQLite的rawQuery()方法?(What must I do to i

2019-10-29 16:45发布

我试图使用SQLite rawQuery方法的基础上,这里的代码:

Android的记录存在()的数据库?

...但我得到“ 的方法rawQuery(字符串,字符串[])是未定义的类型OdaaDBOpenHelper Authorize_Activity_DynamicControls.java”与此代码:

    OdaaDBOH = new OdaaDBOpenHelper(this);
. . .
    private boolean RecordExists(String _id) {
        // This:
        Cursor cursor = OdaaDBOH.rawQuery("select 1 from NAPOLEON_DYNAMITE_TABLE where _id=%s",  
        // or this:
        //Cursor cursor = OdaaDOdaaDBOpenHelperBOH.rawQuery("select 1 from     
NAPOLEON_DYNAMITE_TABLE where _id=%s",  
                new String[] { _id });
        boolean exists = (cursor.getCount() > 0); 
        cursor.close(); 
        return exists; 
    }

. . .
// from referenced unit:

public class OdaaDBOpenHelper extends SQLiteOpenHelper {

我它既使用我SQLiteOpenHelper派生类的实例名称,并使用类名称本身(在上面的代码中注释掉)尝试。

我应该做些什么来实现rawQuery()或导致其被识别/确认?

Answer 1:

从这个问题的正确答案:

考虑到MDB是你SqlLiteDatabase类...

OdaaDBOH应该是一个实例SQLiteDatabase如果你想使用rawQuery就可以了,很可能你提供的实施SQLiteOpenHelper那里,这当然没有一个方法rawQuery



Answer 2:

rawQuery()是在一个方法SQLiteDatabase ,不SQLiteOpenHelper 。 呼叫getReadableDatabase()getWritableDatabase()在你的SQLiteOpenHelper得到SQLiteDatabase



文章来源: What must I do to implement SQLite's rawQuery() method?