更改DBOpenHelper.java
[java]
package com.example.lession04_db.service;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
public class DBOpenHelper extends SQLiteOpenHelper {
// 資料庫的名稱
private static final String name = "CSDN.db";
// 資料庫的版本
private static final int version = 2;
public DBOpenHelper(Context context) {
// 第三個參數CursorFactory指定在執行查詢時獲得一個遊標執行個體的工廠類,設定為null,代表使用系統預設的工廠類
super(context, name, null, version);
Log.v("DBSQLiteOpenHelper", "構造器......");
}
// 當資料庫第一次建立的時候 執行的方法
@Override
public void onCreate(SQLiteDatabase db) {
// execSQL來執行sql語句
db.execSQL("create table person(personid integer primary key autoincrement,name varchar(20),age integer )");
Log.v("DBSQLiteOpenHelper", "onCreate......建立執行一次");
}
// 當資料庫的版本發生變化的時候執行的方法
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("alter table person add account integer");
Log.v("DBSQLiteOpenHelper", "當資料庫版本更新的時候執行........每次更新都執行 ");
}
}
package com.example.lession04_db.service;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
public class DBOpenHelper extends SQLiteOpenHelper {
// 資料庫的名稱
private static final String name = "CSDN.db";
// 資料庫的版本
private static final int version = 2;
public DBOpenHelper(Context context) {
// 第三個參數CursorFactory指定在執行查詢時獲得一個遊標執行個體的工廠類,設定為null,代表使用系統預設的工廠類
super(context, name, null, version);
Log.v("DBSQLiteOpenHelper", "構造器......");
}
// 當資料庫第一次建立的時候 執行的方法
@Override
public void onCreate(SQLiteDatabase db) {
// execSQL來執行sql語句
db.execSQL("create table person(personid integer primary key autoincrement,name varchar(20),age integer )");
Log.v("DBSQLiteOpenHelper", "onCreate......建立執行一次");
}
// 當資料庫的版本發生變化的時候執行的方法
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("alter table person add account integer");
Log.v("DBSQLiteOpenHelper", "當資料庫版本更新的時候執行........每次更新都執行 ");
}
}
運行測試方法,得到如下結果