文章目录
打开SQLite数据库的:
方式一:在Android Studio中
- 1.先启动自己的项目然后在Android Studio底部打开Terminal
- 2、adb shell远程来连接到手机系统
adb shell
结果:
generic_x86:/ $
- 3、简单查看一下文件夹
ls
结果:
ls: ./init.zygote32.rc: Permission denied
ls: ./init.rc: Permission denied
ls: ./init.environ.rc: Permission denied
ls: ./init.usb.rc: Permission denied
ls: ./adb_keys: Permission denied
ls: ./init.usb.configfs.rc: Permission denied
ls: ./ueventd.rc: Permission denied
ls: ./metadata: Permission denied
ls: ./init: Permission denied
acct bugreports config debug_ramdisk etc odm product sbin sys
apex cache d default.prop lost+found oem product_services sdcard system
bin charger data dev mnt proc res storage vendor
可能遇到的问题:
Permission denied
/system/bin/sh: cd: /data/da: No such file or directory
这些其实都是权限问题
如果没有遇到Permission denied问题可忽略第四步。
解决方案在底部
- 4、切换为root用户
su
或
也可以使用su root命令,两者本质上是一样的。
su root
结果:
generic_x86:/ #
如果你输入命令后你感觉和之前没有什么区别,那么此时你就应该学习一下你的Linux基础啦。
补充:
在Linux中
#:代表管理员即root用户(拥有最高权限)
$: 普通用户
可能遇到的问题:
/system/bin/sh: su: inaccessible or not found
解决方案在底部
- 5、进入到databases文件夹
注意:要求找自己项目的database下的
cd /data/data/com.example.sqlitedemo/databases
结果:
generic_x86:/data/data/com.example.sqlitedemo/databases #
- 6、进入数据库
sqlite3 database_name
sqlite3 product.db
结果:
generic_x86:/data/data/com.example.sqlitedemo/databases # sqlite3 product.db
SQLite version 3.22.0 2018-12-19 01:30:22
Enter ".help" for usage hints.
sqlite>
- 7、一个简单的查询
select * from information;
这个是我之前插入的一条数据
1|one|one
END
此时就可以对该数据库进行操作啦!
方式二:cmd中
方式二与方式一其实是一样的,只是打开方式不同
- 1、打开cmd
win+r 输入cmd 回车
- 2、远程连接手机系统
adb shell
ps:如果你没有给SDK配置环境变量,直接使用此命令是无法打开的。
需要进入到自己电脑SDK目录下的platform-tools文件夹内打开
A:\Document\AndroidStudio_SDK\platform-tools
附:
- 3、简单的查看目录
ls
结果:
可能遇到的问题:
Permission denied
/system/bin/sh: cd: /data/da: No such file or directory
这些其实都是权限问题
第四步就是解决方案
如果没有遇到Permission denied问题可忽略第四步。
- 4、切换为root用户
su
或
也可以使用su root命令,两者本质上是一样的。
su root
结果:
generic_x86:/ #
可能遇到的问题:
/system/bin/sh: su: inaccessible or not found
解决方案在底部
- 5、进入到databases文件夹
注意:要求找自己项目的database下的
cd /data/data/com.example.sqlitedemo/databases
结果:
- 6、进入数据库
sqlite3 database_name
sqlite3 product.db
结果:
- 7、查看所有表
.tables
android_metadata为默认的一个表
information是我自己创建的表
END
此时就可以对该数据库进行操作啦
方式三:利用谷歌浏览器
附链接:https://blog.csdn.net/code_hero666/article/details/80282394?utm_source=blogkpcl8
这种方案可能会遇到“HTTP/1.1 404 Not Found”这个问题,解决方案:暂无
方案四:利用SQLiteExpertProSetup64第三方工具
如果前三种方式都无法解决,那这个就是一个终极方案,除了麻烦一点没有其他的啦
下载地址:
http://www.sqliteexpert.com/download.html
直接下载安装即可
使用方法:
1、导出数据库
利用Android Studio将数据库下载到本地
在本地新建一个databases文件夹将两个文件放入即可
2、打开SQLiteExpertProSetup64
File—>Open Database
找到刚才导出的数据库文件
这种方案之所以麻烦是因为,每次操作一次数据库都要导出才能看到结果。
附加:
1、关于adb shell 的解释:
ADB: Android debug bridge.
Android手机实际是基于Linux系统的。
在你的android手机的设置中,Settings->Applications->Development->USB debugging勾选上,就可以允许PC通过adb shell命令远程登录你手机的linux系统。
这时通过USB线将android手机与电脑问连起来,在电脑上dos命令行中输入adb shell命令,可以远程登录到android手机的linux系统中。
成功登陆到android手机的系统中后,就可以运行一些简单的linux命令,比如'ls'查看目录中的文件,‘cd xxx’进入到xxx目录, 'exit'退出登录等等答。
2、问题解决:
- 1、关于/system/bin/sh: su: inaccessible or not found问题的解决:
出现此问题是因为手机(虚拟机)中没有或者不支持导致
经了解发现虚拟机中的Google Play是不支持root的,
解决方案:
安装一个支持root用户的虚拟机Google APLS
安装方法: - 1、打开AVD Manager
- 2、
完成next之后你会发现
选择要安装的Android版本next安装即可(只要后面后有Google APLS就可以)
直接finish - 3、用此虚拟机运行项目,即可。
注意如果你之创建过数据库或表以及在表中添加 的数据都会消失。这个道理其实很简单就相当于你换了一台新手机一样
3、SQLite数据库的简单操作
ctrl+K 清屏
查看所有数据库
.databases
查看所有表
.tables
退出SQLite
.exit
打开某数据库
.open database_name
查询某一表中所有数据
select * from table_name;
更多操作见链接:https://www.runoob.com/sqlite/sqlite-tutorial.html
END