sqlite3

无论您是从远程 shell 连接到设备还是从主机连接,都可以使用 sqlite3 命令行程序来管理 Android 应用创建的 SQLite 数据库。sqlite3 工具包含许多实用的命令,例如用于打印表内容的 .dump 以及用于打印现有表的 SQL CREATE 语句的 .schema。该工具还允许您即时执行 SQLite 命令。

如需了解完整详情,请参阅 SQLite 文档。如需了解更多文档,请访问 sqlite3 和 SQLite 支持的 SQL 语言规范

通过远程 shell 使用 sqlite3

  1. 输入以下命令进入远程 shell
    adb [-d|-e|-s {<serialNumber>}] shell
  2. 在远程 shell 中,输入以下命令启动 sqlite3 工具
    sqlite3

    您还可以选择性地指定要探索的数据库的完整路径。模拟器/设备实例会将 SQLite 数据库存储在 /data/data/<package_name>/databases/ 目录下。

  3. 调用 sqlite3 后,您可以在 shell 中发出命令。要退出并返回 adb 远程 shell,请输入 exit 或按 Control+D。

例如

$ adb -s emulator-5554 shell
# sqlite3 /data/data/com.example.google.rss.rssexample/databases/rssitems.db
SQLite version 3.3.12
Enter ".help" for instructions
.... enter commands, then quit...
# sqlite> .exit

注意:您需要文件系统的 root 权限才能查看 /data/data 目录层次结构中的文件。

要在本地使用 sqlite3(而不是在 shell 中),请从设备拉取数据库文件并启动 sqlite3

  1. 将数据库文件从设备复制到主机
    adb pull <database-file-on-device>
    
  2. 启动 sqlite3 工具,并指定数据库文件
    sqlite3 <database-file-on-host>