SQLite数据库(轻量级关系型数据库)
在创建数据库时,首先我们需要创建一个类继承SQLiteOpenHelper类(数据库打开帮助类)
1.定义一个构造方法
public MyOpenHelper(Context context,String name,CursorFactory factory,int version){}
其中,第一个参数为上下文,如果是activity中创建其对象时,传入MainActivity.this,但是如果是在没有继承上下文的类中,我们就只能使用getContext()得到一个虚拟的上下文;参数二为数据库的名字,person.db;参数三为游标工厂,为null时采用默认设置;参数四为数据库版本。
2.onCreate方法:数据库被创建时调用,只调用一次。
3.onUpgrade方法,数据库升级时会调用。
创建数据库:前面我们只是定义了一个数据库打开帮助类,要实现创建数据库,我们还要在其他java文件中。。。

补充:getWritableDatebase()与getReadableDatabase()区别其中,调用可写数据库,它会创建一个可读可写的数据库,而对于调用可读的数据库,一般情况下,它也会调用getWritableDatabase(),但是如果遇到存储空间满了等情况,它只会创建一个只读数据库,如果这些问题解决了,它又会是一个可读可写的数据库。
对于创建表和修改表:一般情况下,我们创建表在onCreate方法中,修改表在onUpgrade方法中。




网友评论