Android学习笔记5--创建一个数据库

来源:互联网 发布:删除windows bt 编辑:程序博客网 时间:2024/05/17 20:41

创建一个数据库
1.定义一个类MyOpenHelper继承SQLiteOpenHelper
2.在MyOpenHelper中写一个有参数的构造方法,因为SQLiteOpenHelper中没有无参构造
3.在MyOpenHelper中重写onCreate和onUpgrade方法,onCreate做表结构的初始化;onUpgrade做表结构的更新
4.在MainActivity中创建数据库,myOpenHelper.getWritableDatabase和myOpenHelper.getReadableDatabase都行

public class MyOpenHelper extends SQLiteOpenHelper {    /**     *      * @param context  上下文     * name:数据库的名字      * factory 目的创建cursor对象        *      * version 数据库的版本   从1开始     */    public MyOpenHelper(Context context) {        super(context, "itheima.db", null,4);    }    /**     * Called when the database is created for the first time.     * 当数据库第一次创建的时候调用     * 那么这个方法特别适合做表结构的初始化  创建表就是写sql语句     */    @Override    public void onCreate(SQLiteDatabase db) {        //id 一般以_id         db.execSQL("create table info(_id integer primary key autoincrement,name varchar(20),phone varchar(20))");    }    /**     * Called when the database needs to be upgraded     * 当数据库版本升级的时候调用      *      * 这个方法适合做   表结构的更新     */    @Override    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {        db.execSQL("alter table info add phone varchar(20)");    }}
public class MainActivity extends Activity {    private MyOpenHelper myOpenHelper;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        myOpenHelper = new MyOpenHelper(getApplicationContext());        //打开或者创建数据库  如果是第一次就是创建   //      SQLiteDatabase sqLiteDatabase = myOpenHelper.getWritableDatabase();        //打开或者创建数据库  如果是第一次就是创建     如果磁盘满了 返回只读的//      SQLiteDatabase readableDatabase = myOpenHelper.getReadableDatabase();           }}
0 0
原创粉丝点击