Android 的 SQLLite数据库

关系型数据库 SQLLite

每个应用程序都要使用数据,Android应用程序也不例外,Android使用开源的、与操作系统无关的SQL数据库—SQLite。SQLite第一个Alpha版本诞生于2000年5月,它是一款轻量级数据库,它的设计目标是嵌入式的,占用资源非常的低,只需要几百K的内存就够了。SQLite已经被多种软件和产品使用,Mozilla FireFox就是使用SQLite来存储配置数据的,Android和iPhone都是使用SQLite来存储数据的。

SQLite体系结构图如下:

Android 的 SQLLite数据库_第1张图片

编译器包括Tokenizer(词法分析器)、 Parser(语法分析器)、Code Generator(代码产生器)。他们协同处理文本形式的结构化查询语句。

后端由B-tree,Pager,OS Interface组成。B-tree的职责是负责排序,维护多个数据库页之间错综复杂的关系,将页面组织成树状结构,页面就是树的叶子。Pager负责传输,根据B-tree的请求从磁盘读取页面或者写入页面。

公共服务中有各种实用的功能比如:内存分配、字符串比较,Unicode转换等。

SQLite数据库是D.Richard Hipp用C语言编写的开源嵌入式数据库,支持的数据库大小为2TB。它具有如下特征:

  • 轻量级

SQLite和C\S模式的数据库软件不同,它是进程内的数据库引擎,因此不存在数据库的客户端和服务器。使用SQLite一般只需要带上它的一个动态库,就可以享受它的全部功能。而且那个动态库的尺寸也相当小。

  • 独立性

SQLite数据库的核心引擎本身不依赖第三方软件,使用它也不需要“安装”,所以在使用的时候能够省去不少麻烦。

  • 隔离性

SQLite数据库中的所有信息(比如表、视图、触发器)都包含在一个文件内,方便管理和维护。

  • 跨平台

SQLite数据库支持大部分操作系统,除了我们在电脑上使用的操作系统之外,很多手机操作系统同样可以运行,比如Android、Windows Mobile、Symbian、Palm等。

  • 多语言接口

SQLite数据库支持很多语言编程接口,比如C\C++、Java、Python、dotNet、Ruby、Perl等,得到更多开发者的喜爱。

  • 安全性

SQLite数据库通过数据库级上的独占性和共享锁来实现独立事务处理。这意味着多个进程可以在同一时间从同一数据库读取数据,但只有一个可以写入数据。在某个进程或线程向数据库执行写操作之前,必须获得独占锁定。在发出独占锁定后,其他的读或写操作将不会再发生。

更多相关文章

  1. Parcalable接口使用(android传递结构体数据的方法)
  2. 从源码看Android常用的数据结构 ( SDK23版本 ) ( 三 , Queue篇)
  3. Android数据存储方式:SharePreference、SQLite、ContentProvider
  4. Android中数据存储----SQLite数据库
  5. 【Android】Android 多个APK数据共享
  6. Android App开发基础篇—数据存储(SP和文件)
  7. android 数据存储初探
  8. android从网站获取json接口数据并放置到spinner
  9. Android实现页面跳转

随机推荐

  1. android activity切换翻转效果
  2. [Android]帧率测试
  3. Android(安卓)自定义手写签名并保存到sdc
  4. Android API对应版本关系(最新更新2019年1
  5. Android:ImageView图片缩放、居中
  6. [Android 编译] Ubuntu 16.04 LTS 成功编
  7. android 自定义 view 实现表盘效果
  8. 继承ListActivity报错的可能原因
  9. Android里面的竖虚线
  10. Android面向切面(AOP)编程实战