Android 无法在sqlite数据库中插入数据?
嗨,我是android新手,我正在创建一个警报,我无法在数据库中插入小时和分钟。下面是我的所有源代码。任何人请帮助我解决这个问题。在运行该程序时,我在insert方法处遇到Nullpointer异常Android 无法在sqlite数据库中插入数据?,android,sqlite,Android,Sqlite,嗨,我是android新手,我正在创建一个警报,我无法在数据库中插入小时和分钟。下面是我的所有源代码。任何人请帮助我解决这个问题。在运行该程序时,我在insert方法处遇到Nullpointer异常 public void setListAdapter(SimpleCursorAdapter mAdapter) { String[] alarm = new String[] { "select*from " + DATABASE_TABLE_NAME }; return ; }
public void setListAdapter(SimpleCursorAdapter mAdapter) {
String[] alarm = new String[] { "select*from " + DATABASE_TABLE_NAME };
return ;
}
private void setAlarm(Calendar targetCal) {
intent = new Intent(getBaseContext(), AlarmReciever.class);
pendingIntent = PendingIntent.getBroadcast(getBaseContext(), RQS_1,
intent, 0);
AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, targetCal.getTimeInMillis(),
pendingIntent);
textAlarmPrompt.setText("\n\n***\n" + "Alarm is set@ "
+ targetCal.getTime() + "\n" + "Repeat every 5 minutes\n"
+ "***\n");
int hour = targetCal.get(Calendar.HOUR_OF_DAY);
int minute = targetCal.get(Calendar.MINUTE);
Log.d(TAG, "value" + hour + minute);
String h = Integer.toString(hour);
String m = Integer.toString(minute);
ContentValues values = new ContentValues();
values.put("hour", h);
values.put("minute", m);
insertalarmclock(h, m);
setListAdapter(mAdapter);
// private void clearAll() {
// SQLiteDatabase mDB = null;
// mDB.delete(MyDatabaseHelper.DATABASE_TABLE_NAME, null, null);
//
// }
}
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE IF NOT EXIST" + DATABASE_TABLE_NAME + ""
+ KEY_ID + "INTEGER AUTOINCRREMENT ," + KEY_ALARM_HOUR
+ "TIME," + KEY_ALARM_MINUTE + "TIME,)");
}
public long insertalarmclock(String h, String m) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("hour", h);
values.put("minute", m);
String val = (String) values.get(h);
Log.d(TAG, "value" + val + h + m);
return mDB.insert(DATABASE_TABLE_NAME, null, values);
}
private SQLiteDatabase getWritableDatabase() {
return null;
}
我的错误是java.lang.NullPointerException 在insertalarmclock(AlarmActivity.java:435)
在
insertalarmclock()
中的setAlarm(AlarmActivity.java:412)中,调用db
上的insert()
,使用getWritableDatabase()
初始化,而不是mDb
,这可能是一堵巨大的代码墙。编辑您的问题,并将其缩减为说明您的问题的最小程序。包括您收到的任何错误消息。我已编辑了代码,请检查其元数据(calSet);只需更改setAlarm(Calendar.getInstance());检查是否工作,是否抛出相同的错误?