新建帮助类
创建一个类并继承SQLiteOpenHelper
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.widget.Toast;
public class MyHelper extends SQLiteOpenHelper {
public static final String CREATE_TABLE="create table Book("+
"_id integer primary key autoincrement,"+
"bname text,"+
"bprice real,"+
"bbanci varchar(10),"+
"bleibie varchar(20),"+
"bcbs varchar(50))";
private Context mContext;
public MyHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
super(context, name, factory, version);
mContext = context;
}
@Override
public void onCreate(SQLiteDatabase db) {
//调用SQLiteDatabase中的execSQL()执行建表语句。
db.execSQL(CREATE_TABLE);
//创建成功
// Toast.makeText(mContext, "Create succeeded", Toast.LENGTH_SHORT).show();
}
@Override
public void onUpgrade(SQLiteDatabase db, int i, int i1) {
db.execSQL("drop table if exists Book");
onCreate(db);
}
}
创建数据库
创建帮助类对象
MyHelper(上下文对象,"数据库名称.db",factory,版本号)
[注]:只有在第一次创建(调用.getWritableDatabase()方法)这个数据库才会调用onCreate方法
若要再次调用onCreate方法,可通过onUpgrade调用
若要调用onUpgrade方法,
myHelper = new MyHelper(this,"BookStore.db",null,版本号);
版本号的值修改为比之前设置的数值大就行
public class ManageActivity extends AppCompatActivity {
MyHelper myHelper;
SQLiteDatabase sdb;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_manage);
//创建帮助类对象
myHelper = new MyHelper(this,"BookStore.db",null,1);
sdb = myHelper.getWritableDatabase();
Toast.makeText(ManageActivity.this, "数据库创建成功", Toast.LENGTH_SHORT).show();
}
}