adb shell下查看sqlite数据库

醉酒当歌 提交于 2019-12-12 01:31:29

adb shell下查看sqlite数据库 

有时需要查看应用的本地数据库是否改变,一般可以使用SqliteStudio来查看(需要把xx.db文件导出来).现在记录一下如何在adb shell 

下面查看

sqlite 数据库的内容.


Android 把数据都存在在/data/data/下面.如果我们需要查看那个应用的数据库内容,就进入到这个应用的包名的目录.然后进入里面的


databases目录,使用ls目录查看数据库文件的名称,再使用sqlite3相关的目录操作就可以了.


具体参考下面的例子:

adb shell
cd data/data/com.android.providers.settings
cd databases  进入目录
ls   显示文件,会发现xxx.db文件,这个例子会看到settings.db这个文件
sqlite3 settings.db    执行到这里命令行会变成sqlite> 开头的,这是表示已经打开了settings.db 这

个数据库文件,后面就可以去查询修改数据了

sqlite>.help 这个命令让我们看到许多命令

sqlite> .exit 命令退出sqlite,返回到#提示符。
sqlite>.tables 查看所有表.

实际我们会看到下面这些表   
android_metadata   bookmarks          secure
bluetooth_devices  global             system

sqlite> select * from secure; 


注意这里要添加分号,这里就会列出表secure 的全部内容了,但是数据是以下面的形式显示的.



如果需要显示的好看一点,可以执行下面的命令
sqlite> .mode column   显示的列会对齐


sqlite>.header on   显示的时候会在顶部显示列的名称



sqlite> .mode insert secure
在插入模式下,被子格式化为看起来像SQL INSERT语句的样式。你可以用插入模式来产生文件(便于)以后用于不同数据库的输入。
当指定插入模式时,你必须给定一个特定参数就是要插入的表名

sqlite> update secure set value="1" where _id=1;  修改数据
sqlite> delete from secure where name="lock_screen_show";   删除数据

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!