【发布时间】:2019-05-20 21:14:07
【问题描述】:
我的 SQLite 给我一个空指针。我正在尝试将这些点写入数据库,并能够从中读取它们。这就是完整的表格。 桌子上没有其他东西。 当我运行查询时,我在 getPoints 函数中得到空指针。 res 出来为空。
这里是代码
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL(
"create table hour " +
"(id integer primary key, number integer)");
db.execSQL(
"create table points " +
"(id integer primary key, number integer)"
);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
db.execSQL("DROP TABLE IF EXISTS hour");
onCreate(db);
}
public boolean insertPoints (int points) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put("number", points);
db.insert("points", null, contentValues);
return true;
}
public int getPoints() {
SQLiteDatabase db = this.getReadableDatabase();
Cursor res = db.rawQuery( "select number from points where id=1", null );
int i = res.getInt(1);
return i;
}
【问题讨论】:
-
rawQuery()不返回空值 - 你的问题是别的。请首先在问题中包含崩溃堆栈跟踪。
标签: android sqlite nullpointerexception