構建一個待辦事項列表應用程序,從而節省用戶EDITTEXT數據在SQL數據庫中,但是當我點擊它崩潰了,但重新啓動按鈕,而不從用戶節省了輸入錯誤無法執行的android的方法:的onClick
logcat的錯誤
0
8-06 23:36:23.018 2904-2904/com.naive.LISTY E/SQLiteLog: (1) table tasks has no column named date
08-06 23:36:23.019 2904-2904/com.naive.LISTY E/SQLiteDatabase: Error inserting date=12/12/12 Description=hello world title=Hello time=12:50
android.database.sqlite.SQLiteException: table tasks has no column named date (code 1): , while compiling: INSERT INTO tasks(date,Description,title,time) VALUES (?,?,?,?)
at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:887)
at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:498)
at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
at android.database.sqlite.SQLiteStatement.<init>(SQLiteStatement.java:31)
at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1469)
at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1341)
at listy.naive.com.listy.Dialog.Add_task(Dialog.java:63)
at java.lang.reflect.Method.invoke(Native Method)
at android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:284)
at android.view.View.performClick(View.java:5198)
at android.view.View$PerformClick.run(View.java:21147)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
上點擊方法
public void Add_task(View view) {
EditText mTitle = (EditText)findViewById(R.id.title_field);
String Title = String.valueOf(mTitle.getText());
EditText mTask = (EditText)findViewById(R.id.description_field);
String Task = String.valueOf(mTask.getText());
EditText mDate = (EditText) findViewById(R.id.date_field);
String Date = String.valueOf(mDate.getText());
EditText mTime = (EditText) findViewById(R.id.time_field);
String Time = String.valueOf(mTime.getText());
SQLiteDatabase db = mHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(TaskContract.TaskEntry.COL_TASK_TITLE, Title);
values.put(TaskContract.TaskEntry.COL_TASK_DESCRIPTION, Task);
values.put(TaskContract.TaskEntry.COL_TASK_DATE, Date);
values.put(TaskContract.TaskEntry.COL_TASK_TIME, Time);
db.insert(TaskContract.TaskEntry.TABLE, null, values);
//updateUI();
//db.close();
}
光標代碼
private Cursor updateUI() {
ArrayList<String> taskList = new ArrayList<>();
SQLiteDatabase db = mHelper.getReadableDatabase();
Cursor cursor = db.query(TaskContract.TaskEntry.TABLE,
new String[]{TaskContract.TaskEntry._ID, TaskContract.TaskEntry.COL_TASK_TITLE, TaskContract.TaskEntry.COL_TASK_DESCRIPTION, TaskContract.TaskEntry.COL_TASK_DATE, TaskContract.TaskEntry.COL_TASK_TIME},
null, null, null, null, null);
return cursor;}
mHelper
public class TaskDbHelper extends SQLiteOpenHelper {
public TaskDbHelper(Context context) {
super(context, TaskContract.DB_NAME, null, TaskContract.DB_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String createTable = "CREATE TABLE " + TaskContract.TaskEntry.TABLE + " (" +
TaskContract.TaskEntry._ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
TaskContract.TaskEntry.COL_TASK_TITLE + " TEXT NOT NULL," +
TaskContract.TaskEntry.COL_TASK_DATE + "TEXT NOT NULL," +
TaskContract.TaskEntry.COL_TASK_DESCRIPTION + "TEXT NOT NULL," +
TaskContract.TaskEntry.COL_TASK_TIME + "TEXT NOT NULL;)";
db.execSQL(createTable);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TaskContract.TaskEntry.TABLE);
onCreate(db);
}}
可能重複[什麼是NullPointerException,以及如何解決它?](http://stackoverflow.com/questions/218384/what-is-a-nullpointerexception-and-how-doi-i-fix -it) –
@VedSarkar你試過我的回答嗎? – Vucko
@Vucko我試過了。不是崩潰,但給出了一個錯誤 –