我必须从SQLite数据库读取值,但在执行
时获取NullPointerException
private final String DB_NAME = "UserDb";
private final String TABLE_NAMES = "tbluser";
SQLiteDatabase sampleDB;
Cursor c=null;
String deviceDec;
c= sampleDB.rawQuery("SELECT * from " +TABLE_NAMES+" where did='"+deviceDec+"' ",null);
请建议我为什么我得到异常,因为在一个函数中它正在运行但在其他函数中它不是,而且我得到我在Log中检查的deviceDec值。
答案 0 :(得分:1)
可能是您的sampleDB;
为空。
所以首先你要像
那样初始化那个对象SQLiteDatabase sampleDB = new SQLiteDatabase(Your Param);
答案 1 :(得分:1)
你需要发起数据库..
SQLiteDatabase sampleDB=context.getReadableDatabase();
答案 2 :(得分:1)
在从中选择数据之前打开数据库。
public SQLiteDatabase openDataBase() throws SQLException {
String myPath = DB_PATH + DB_NAME;
myDataBase = SQLiteDatabase.openDatabase(myPath, null,
SQLiteDatabase.OPEN_READWRITE);
return myDataBase;
}
这将返回数据库..然后使用 返回Db.rawQuery(“”);