SQLite数据库的创建

SQLiteDataBaseSQLiteOpenHelper的区别是什么?
实例化SQLiteDataBase和实例化SQLiteOpenHelper分别创建出来的对象是什么?

创建SQLite数据库的代码如下:

public class MyHelper extends SQLiteOpenHelper {

    public MyHelper(@Nullable Context context) {
        super(context, "directory_example.db", null, 1);
    }

    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {
        sqLiteDatabase.execSQL("CREATE TABLE information(user_id INTEGER PRIMARY KEY AUTOINCREMENT,user_name VARCHAR(20),user_phone INTEGER)");
    }

    @Override
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {

    }
}

其中下边的语句是不是用来创建数据库的?

    public MyHelper(@Nullable Context context) {
        super(context, "directory_example.db", null, 1);
    }

那么下边的语句是用来创建什么的?和上边的具有区别是什么?

    public void onCreate(SQLiteDatabase sqLiteDatabase) {
        sqLiteDatabase.execSQL("CREATE TABLE information(user_id INTEGER PRIMARY KEY AUTOINCREMENT,user_name VARCHAR(20),user_phone INTEGER)");
    }

SQLiteDatabase 是用于执行数据库操作的类,SQLiteOpenHelper 是 SQLiteDatabase 的一个帮助类,用来管理数据库的创建和版本的更新。
其中 SQLieDatase 对象是通过 SOLiteOpenHelper调用方法来获得的。
SQLiteDatabase类一般用来操作表数据,如对数据表的数据进行增删改查操作。
SQLiteOpenHelper 类一般用来操作表结构,如创建表、修改表结构等。

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632