如何在Android Studio中使用SQLite数据库(上)

时间:2024-04-12 17:36:22

本人也是初次接触Android studio开发,在AS中操作数据库时遇到了困难,网上的教程虽多,但大多讲不清楚,我就以自己的亲身体验来为大家分享一些经验,希望有所帮助!

首先,要明确的是,要想在AS中操作SQLite数据库,一定要用到以下三个类:

SQLiteOpenHelper类、SQLiteDatabase类、Cursor类

下面我们分别对这三个类作介绍

1.SQLiteOpenHelper
这个类的作用是管理数据库,也就是用来创建或是打开一个数据库。注意,这个类是一个抽象类,为什么呢?因为它里边有两个抽象方法,分别是onCreate()方法和onUpgrade方法,这两个方法的作用后面再讲。

2.SQLiteDatabase
简而言之,这个类的作用就是执行SQL语句

3.Cursor
这个类的作用是得到数据库中数据的查询结果,也就是说,我们用SQLiteDatabase中的方法执行SQL查询语句,查询出来的结果就可以保存在Cursor类的对象中

简单地讲完了这三个类的基本作用,我们实际地操作一下整个流程

从上述三个类的介绍来看,我们若想在AS中操作SQLite数据库,就要依次使用上述三个类

首先是SQLiteOpenHelper

前面说到,它是一个抽象类,所以我们如果要使用它的方法来创建或连接数据库,就一定要自己创建一个类来继承它,这样才能使用它的方法。下面是我写的一段代码(总共三个文件,两个java一个xml,以这三个文件为例):
如何在Android Studio中使用SQLite数据库(上)

我们自己新建了一个名为DBHelper的类,用它来继承SQLiteOpenHelper类,实现了其中的两个抽象方法onCreate()和onUpgrade(),虽然这两个方法里面什么也没写。又因为SQLiteOpenHelper没有一个无参的构造函数,所以我们要建一个构造函数,并且在构造函数中又super显式地调用父类的构造函数,并向其传递两个参数,分别是数据库名和版本号,这里我自己定义了db_name和version,一个存数据库名称,一个存版本号。这样,我们的DBHelper就算是建好了。

接下来就是SQLiteDatabase类了

我们进入到MainActivity,代码如下:如何在Android Studio中使用SQLite数据库(上)
我们先看到21行,我们在这里用刚刚创建的DBHelper新建了一个dbhelper对象,接着看22行,我们新建了一个SQLiteDatabase的对象db,并使用getWritableDatabase()方法获取数据库的引用,将引用赋给db,接下来就可以借助db来使用execSQL()方法,这个方法的作用就是执行SQL语句,在上面的代码中,就实现了创建一个数据表并插入数据的操作。

限于文本的篇幅,Cursor类就留到下一篇再讲,其中有很多细节的东西并没有讲的很清楚,我尽量在下一篇补齐,请见谅。

本人也是个初学者,这篇文章纯属抛砖引玉,其中有什么不对的地方请大家多多指正,大家共同学习、一起进步!