Android Studio中用SQLiteOpenHelper()方法创建数据库中的表结构

这篇博文写的是用SQLiteOpenHelper()方法创建数据库中的表结构,而如何用这个方法创建数据库,欢迎大家访问我的博文:
在android studio中用SQLiteOpenHelper()方法建立数据库
注:这篇文章是承接上面发的链接的文章,有什么问题欢迎讨论

用SQLiteOpenHelper()方法创建表结构可以用onCreat()函数和onUpgrade()函数
一.用onCreat()函数创建表结构
onCreat():只有当数据库创建第一次被调用到

  @Override
    public void onCreate(SQLiteDatabase db) {//只有第一次数据库创建时会用到
        Log.i( TAG , "onCreate" );
        db.execSQL( "create table student1(_id integer primary key autoincrement,name varchar(20),gender varchar(30))" );

    }

(只有数据库第一次创建时会用到这个方法)
二.用onUpgrade()函数创建表结构
onUpgrade():做数据库的版本更新会用到

@Override
    public void onUpgrade(SQLiteDatabase db , int oldVersion , int newVersion) {
        Log.i( TAG , "onUpgrade" );
        db.execSQL( "alter table student1 add address varchar(30)" );
    }

注:版本号只能一点点向上加,不能递减,要不然系统会崩溃

要在Android Studio创建SQLiteOpenHelper,需要执行以下步骤: 1. 在项目的app/src/main/java目录下创建一个新的Java类,命名为DatabaseHelper(或其他你喜欢的名称)。 2. 让DatabaseHelper类继承自SQLiteOpenHelper类,并实现构造函数和两个必需的方法:onCreate()和onUpgrade()。 ```java public class DatabaseHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = "myDatabase.db"; private static final int DATABASE_VERSION = 1; public DatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { // 创建数据库格和初始化数据 db.execSQL("CREATE TABLE myTable (id INTEGER PRIMARY KEY, name TEXT)"); db.execSQL("INSERT INTO myTable (id, name) VALUES (1, 'John')"); db.execSQL("INSERT INTO myTable (id, name) VALUES (2, 'Jane')"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // 数据库版本更新时执行的操作 db.execSQL("DROP TABLE IF EXISTS myTable"); onCreate(db); } } ``` 3. 在需要使用数据库的Activity,创建DatabaseHelper的实例,并调用getWritableDatabase()或getReadableDatabase()方法来获取一个可读写或只读的数据库对象。 ```java DatabaseHelper dbHelper = new DatabaseHelper(this); SQLiteDatabase db = dbHelper.getWritableDatabase(); ``` 现在你已经成功创建了一个SQLiteOpenHelper并可以使用它来管理你的数据库了。
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值