android如何查看手机中的db文件,查看sqlite数据库的表结构

原创 2016年08月30日 14:14:20
我们的app里面用到sqlite数据库的时候, 会生成一个db文件,保存在我们手机中。有的时候,在调试数据库,很想看一下里面的表结构是否正确,这个时候就十分苦恼,因为这个db文件不能够直接拿出来,我们知道,在DDMS里面有一个FileExplorer,它里面保存着手机中的各个文件夹,但是尝试打开里面的文件夹的时候,却发现怎么点都没有东西,是真的没有吗?其实是我们没有获取到访问这个文件夹的权限。下面我们就开始一步一步的拿到真机调试中的db文件。

注意:确保你的手机是root过的。

一、打开adb.exe

 到sdk目录下,找到platform-tools,adb.exe就在这个文件夹下,尝试双击打开,发现cmd一闪而过,然后就没了,打不开?这里提供一个打开adb.exe的方法,在文件夹空白区域,按住键盘shift,同时点击鼠标右键,在弹窗中选择“在此处打开命令窗口”,会弹出如下cmd窗口(也可以直接打开cmd,然后进入相应的路径):

这里写图片描述

二、打开DDMS(Android Device Monitor)

打开DDMS后,选择FileExplorer,然后我们可以看到其下的各个文件夹,我们要找的.db文件就保存在data文件夹下

这里写图片描述

如果FileExplorer下没有东西的话,可以尝试选择左边的手机型号。此时我们点击data,会发现data是无法打开的,然后我们进行下一步,通过cmd执行命令为我们获取相应的权限。

三、获取权限
在获取权限的时候,需要一步一步的获取文件夹权限。
1、获取data文件夹权限

 在第一步打开的cmd中, 输入命令 adb shell su -c "chmod 777 /data" , 回车。
 这时data文件夹的权限就获取到了,打开data可以看到其下的文件夹,

这里写图片描述

2、获取dada/dada文件夹权限

 与第一步类似,继续输入命令  adb shell su -c "chmod 777 /data/data",回车。
 这样就获取到了dada/dada文件夹权限,打开dada/dada,里面保存了个个应用包名文件夹,找到我们需要找的app包名,然后再进一步打开,

3、获取应用db文件

 继续输入命令  adb shell su -c "chmod 777 /data/data/包名",回车。这时,就打开了这个app的文件夹,db文件,保存在databases里面。
 继续输入命令  adb shell su -c "chmod 777 /data/data/包名/databases",回车。这时,databases可以打开了,我们可以看到保存在其中的db文件。
 继续输入命令  adb shell su -c "chmod 777 /data/data/包名/databases/*",回车。这时,databases下的db文件都被设为可读状态

这里写图片描述

4、导出db文件

 选择需要导出的文件,然后点击右上角的导出按钮,选择保存地址即可

四、查看数据库结构

db文件已经拿到,那么查看数据库可以使用数据库工具,将db文件导入即可。我这边使用的是Navicat Premium

这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

[Android]如何在不root的情况下,查看sqlite数据库

心得 : 最好还是用google来查东西 Stackflow原问题答案adb shell $ run-as 你的包名 $ cp ./databases/你的数据库名 /sdcard/ $ exit ...

adb shell下查看sqlite数据库

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

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

android之存储篇_SQLite数据库_让你彻底学会SQLite的使用

SQLite最大的特点是你可以把各种类型的数据保存到任何字段中,而不用关心字段声明的数据类型是什么。 例如:可以在Integer类型的字段中存放字符串,或者在布尔型字段中存放浮点数,或者在字符型字段中...

android入门之使用adb shell 查看data目录下的SQLite数据库

为了查询android下SQLite数据库,我查询到SQLite及其它的所有的数据库,被储存于/data/data//databases目录下,然而我打开手机目录并没有发现这个目录。 这时我查到这个目...
  • Cony_14
  • Cony_14
  • 2016年04月10日 12:56
  • 3041

android项目中查看数据库的内容 真机查看

一、在Eclipse中    1、打开cmd 输入命令:adb shell    2 、再输入su   3 、 在输入chmod 755 /data     这样就可以打开了d...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

Android 如果读取asserts 中的db文件,并进行查询操作

前言:前篇已经讲了,如何将excel表格转化成db文件使用。不清楚的朋友可以看下我上篇的文章。然而在这里,主要说下怎么操作assserts目录下的db文件,进行对数据库的查询操作。废话不多说,开始吧!...
  • zsr0526
  • zsr0526
  • 2016年11月30日 12:17
  • 797

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

Android数据库(SqlLite)操作和db文件查看

操作步骤很简单,首先导入sqlLite 的DB文件(即File Explorer   /data /data/),然后进行各种sql操作。 下面是我的代码: package com.xiaos...
  • catoop
  • catoop
  • 2012年05月21日 23:47
  • 19931
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android如何查看手机中的db文件,查看sqlite数据库的表结构
举报原因:
原因补充:

(最多只允许输入30个字)