Android Studio中使用SQLite问题:android.database.sqlite.SQLiteException: no such table: XXX (code 1)


一、正确传入数据库名   

这里我们注意的是,在使用数据库的时候,当且仅当创建数据库的时候我们需要借助我们的helper类的构造函数来创建具体表格的时候需要定义当前表格的名字。

比如这里我的Helper类是EventsDBHelper(.java文件)。那么,我在MainActivity中,就需要用具体的名字(我这里的DB_NAME是预先声明的全局变量,类型是String)。


而之后我们对该数据库作U(update)、Q(query)、I(insert)、D(delete)等操作时,我们要传入的数据库名是我们在建表语句中定义的名字。

比如我的建表语句如下图所示,是“EventBase”。


因此,下面我做的所有操作,传入的数据库名均为“EventsBase”。




扫描二维码关注公众号,回复: 2184940 查看本文章


二、重写onUpgrade函数

这之后,我们还要注意实现Helper类中的onUpgrade函数。

这是因为,我们每一次对表格的UQID操作都相当于在升级数据库。

基本上,我就是通过这两部解决no such table问题的,可能不同的朋友情况会有所不同,在此谨作参考,希望可以帮到需要的朋友!

第一次写博文,如有错误,恳请不吝指出!

猜你喜欢

转载自blog.csdn.net/winerchopin/article/details/78335595