Android 读取Sqlite数据库时获取NullPointerException
我必须从SQLite数据库中读取值,但在执行时得到Android 读取Sqlite数据库时获取NullPointerException,android,sqlite,Android,Sqlite,我必须从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 "
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);
请告诉我为什么我会得到异常,因为在一个函数中它正在运行,而在另一个函数中它没有运行,而且我也会得到我在日志中签入的deviceDec值。可能是您的
sampleDB代码>为空
首先,你要初始化这个对象,就像
SQLiteDatabase sampleDB = new SQLiteDatabase(Your Param);
您需要启动数据库
SQLiteDatabase sampleDB=context.getReadableDatabase();
先打开数据库,然后再从中选择数据
public SQLiteDatabase openDataBase() throws SQLException {
String myPath = DB_PATH + DB_NAME;
myDataBase = SQLiteDatabase.openDatabase(myPath, null,
SQLiteDatabase.OPEN_READWRITE);
return myDataBase;
}
这将返回Database。。然后使用
returnedDb.rawQuery(“”) 请粘贴您的表结构。这就是我如何创建数据库sampleDB.execSQL(“创建表如果不存在”+表名称+“(id整数主键,did文本,idate日期,edate日期)”);sampleDB.execSQL(“插入到“+TABLE_NAME+”(did、idate、edate)值(“+IMEI+”、“+fDate+”、“+feDate+”);”);但问题是,在我创建数据库的活动中,数据库是工作文件,但在其他活动中,我必须在那里读取数据库,它抛出空指针异常