为什么在已有的android数据库中,不能建表(数据库里已有表)

为什么在已有的android数据库中,不能建表(数据库里已有表),第1张

你是想重新建表吗,

你可以在settings中把此程序的数据清掉,就这就是删除了你手机内存的数据库,下次就会创建数据库了

你还可以改变创建数据库时,super里的数据库的版本号,在onupgrade里,先用sql语句删除所有的表后,调用oncreate方法,重新创建(sqlitedatabaseexeute("drop table if exists tablename"),后调用oncreate(sqlitedatabase)方法)

为了实现对数据库版本进行管理,SQLiteOpenHelper类提供了两个重要的方法,分别是onCreate(SQLiteDatabase db)和onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion),前者用于初次使用软件时生成数据库表。

后者用于升级软件时更新数据库表结构。当调用SQLiteOpenHelper的getWritableDatabase()或者getReadableDatabase()方法获取用于 *** 作数据库的SQLiteDatabase实例的时候,如果数据库不存在,Android系统会自动生成一个数据库,接着调用onCreate()方法,onCreate()方法在初次生成数据库时才会被调用,在onCreate()方法里可以生成数据库表结构及添加一些应用使用到的初始化数据。

onUpgrade()方法在数据库的版本发生变化时会被调用,一般在软件升级时才需改变版本号,而数据库的版本是由程序员控制的,假设数据库现在的版本是1,由于业务的变更,修改了数据库表结构,这时候就需要升级软件,升级软件时希望更新用户手机里的数据库表结构,为了实现这一目的,可以把原来的数据库版本设置为2,并且在onUpgrade()方法里面实现表结构的更新。

当软件的版本升级次数比较多,这时在onUpgrade()方法里面可以根据原版号和目标版本号进行判断,然后作出相应的表结构及数据更新。

1,进入到控制台中,输入adb shell,进入到命令模式的环境中

2,输入:cd /data/data/

3, 选择你所在的数据库文件,比如我的comandroidhomework, 输入命令:cd comandroidhomework

4, 可以使用ls -l 命令查看当前目录中的文件

5,输入: cd databases 进入到数据库文件中

6, ls -l 显示你数据库中你建立的数据库

7, sqlite3 infodb 进入到你选择的数据库中

8, tables :查看你建的表

9, select from table_name;s 可以查看整个表的信息

10, 使用其他的SQL语句可以进一步对表进行 *** 作,注意SQL语句必须用分号(;)结尾

如下图所示:

以上就是关于为什么在已有的android数据库中,不能建表(数据库里已有表)全部的内容,包括:为什么在已有的android数据库中,不能建表(数据库里已有表)、android中 怎样获取服务器上的数据库版本、如何使用adb命令查看android中的数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9319420.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存