android - sqlite getReadableDatabase()错误

时间:2014-07-05 12:52:37

标签: android android-sqlite

我是初学者,我想使用SQLITE,但是我收到了错误。 这个函数在主类中:

public Cursor getData(int id) {
    SQLiteDatabase db = this.getReadableDatabase();
    Cursor res =  db.rawQuery( "select * from weight where id="+id+"", null );
    return res;
 }

我导入了sqlite文件:

import android.database.Cursor;
import android.database.DatabaseUtils;
import android.database.sqlite.SQLiteOpenHelper;
import android.database.sqlite.SQLiteDatabase;

错误是: 对于类型Activity3

,方法getReadableDatabase()未定义

请帮助

2 个答案:

答案 0 :(得分:2)

  1. 实现扩展SQLiteOpenHelper的类,提供所需的onCreate()onUpgrade()生命周期回调。

  2. 在数据库助手对象上调用getReadableDatabase()而不在活动上调用,例如

    SQLiteDatabaseHelper helper = new MyDatabaseHelper(this);
    SQLiteDatabase db = helper.getReadableDatabase();
    
  3. Documentation

答案 1 :(得分:0)

将其用作光标:

Cursor cursor = getActivity().getContentResolver().query(Uri, 
projection,selection,selectionArgs,sortOrder);

现在,您将不必调用不断产生null的SQLiteDatabase对象。