Android 使用SQLite数据库,这个不用多说了。http://www.sqlite.org
开始有点不了解,看了许久相关内容才明白,看来我对数据库一直都不是很敏感啊!
系统环境:
Windows 7 PowerShell
android 2.1 emulator

以下操作均在adb shell中完成,不知道adb shell 是什么? 这个我就不多说了,Google 一下吧,呵呵!
言归正传,android系统中的SQLite使用其实很简单,SQLite数据库其实可以看作一个文件,扩展名为.db,以android2.1系统为例,它已经内嵌了SQLite3.5.9版本,我们可以使用SQLite相关命令对其进行操作
sqlite3 [databases name]
之后会进入sqlite>状态
这里可以正常使用sql语句对相应的表进行操作。不知道数据库里有哪些表?没关系
.help 可以看到相关命令,sqlite中所有的内部命令都是 . 开头的。可以看到.tables命令查看表名,后面的你就知道该怎么做了吧。

举例:尝试在模拟器中找了一下联系人的数据库文件,注意这个如果是在手机上,没有root权限,应该是不能访问的,这里只是举例。
adb shell
进入 /data/data/com.android.providers.contacts/databases 目录
sqlite3 contacts2.db 连接数据库文件
sqlite> 提示符下输入 .tables 查看所有表,如下:
_sync_state status_updates
_sync_state_metadata v1_settings
activities view_contacts
agg_exceptions view_contacts_restricted
android_metadata view_data
calls view_data_restricted
contact_entities_view view_groups
contact_entities_view_restricted view_raw_contacts
contacts view_raw_contacts_restricted
data view_v1_contact_methods
groups view_v1_extensions
mimetypes view_v1_group_membership
name_lookup view_v1_groups
nickname_lookup view_v1_organizations
packages view_v1_people
phone_lookup view_v1_phones
raw_contacts view_v1_photos
settings
后面简单写了一个select语句看看表内容。我们这里看到绝大多数使用数据的apk,都会在/data/data中对应的目录中有sqlite数据库文件,这也应该是android的系统规则吧。
自己的推断,如果有错误,请高手指教。

以下操作在Windows中完成
SQLite数据看似单薄但是它具备关系型数据库的所有基本特性:表、试图、索引、触发器等,所以这些都在命令行中完成,估计有点繁琐。所以找了一下相关的GUI工具,推荐一个:
SQLite Administrator 网址 http://sqliteadmin.orbmu2k.de/
推荐它主要是因为它免费、免安装绿色、功能界面都不错。当然还有功能更强大,在SQLite官网中你可以找到很多http://www.sqlite.org/cvstrac/wiki?p=ManagementTools

举例:继续上面的内容,通过adb命令,我们是可以将数据库文件导出的,如下
adb pull /data/data/com.android.providers.contacts/databases/contacts2.db e:\
这样我们就可以利用相应的gui工具对数据库进行分析和操作了。

以上只是对android开发过程中的数据库部分操作总结,如果对android中的数据库内容操作还是要通过SQLiteOpenHelper等类中方法进行访问操作。以上更像是数据库管理员和设计人员要做的事情。

如有不对之处请高手指教。

更多相关文章

  1. 【Android开发学习06】Android中的文件I/O操作
  2. Android SQLite数据库应用技巧分享
  3. 使用浏览器查看Android SQLite数据库-Android Debug Database用
  4. Android sql数据库的Android包里面的函数介绍
  5. android 这篇文章让我更加明白android数据库存储
  6. Android开发中用到的命令
  7. android 模拟器命令
  8. Google手机Android操作系统面试题

随机推荐

  1. Android(安卓)IPC编程简介
  2. Android应用程序UI硬件加速渲染技术简要
  3. fir.im Weekly - iOS / Android(安卓)动
  4. onTouchEvent, onClick及onLongClick的调
  5. AIDL --- Android中的远程接口
  6. android 设置控件的透明度
  7. step by step android
  8. 探究J2ME和Android的几大区别
  9. 最初程序员的思维“修炼”之四——Androi
  10. Android通知栏版本兼容解决方案