编辑推荐
企业级计算之外,有一款数据库,它具备大量软硬件需要的关系数据库功能,同时没有传统数据库管理系统的复杂配置、维护,以及高昂的成本。它就是SQLite据库——一款极其紧凑的可嵌入的数据库,一款能处理巨大数据量的数据库。通过编程和开发,SQLite可以具备大量强大的特性。它也支持C、Java、Ped、PHP、Pvthon、Ruby、Td等语言。《SQLite权威指南(第二版)》包含了SQLite数据库**版本的全部内容,全面介绍SQLite的功能和API,同时,以SQLite为基础,帮助新人开启数据库开发的**次旅程。短时间内,您就能开发应用程序,诸如服务器端浏览器插件或者很有流行潜力的iPhone或Android应用!您将会了解到SQLltc的C、Java、Pd、PHP、Python、Ruby以及Tcl展。您将会掌握SQLite內核。您将会学习使用SQLitc开发iOS(iPhone)和Android应用。全世界范围内,从移动电话和GPS设备到机顶盒与Web浏览器,数以干计的产品选择了SQLite数据库。您可能每天都在不知不觉中使用SQLite。
——艾伦,Grant Allen和Mike Owens
 ;
内容简介
本书是一本关于SQLite起源、特性、简介、使用、深度解析的书。全书首先从SQLite最初起源、特性、设计理念、实际应用讲解开始,逐步深入、全面地介绍了在各个平台如何使用SQLite。接着,介绍SQLite的一般SQL和高级功能的SQL,采取举例说明,使得本书内容生动有趣。然后,全面介绍了各种语言如何与SQLite进行编程交互,重点介绍SQLite原生语言C语言中的API,使得使用者可以不管扩展SQLite的功能。本书还介绍了目前火热的IOS和Android开发中如何使用SQLite,并给出实际例子。最后,介绍了SQLite内部架构设计,使得读者可以深入理解SQLite,高级开发者可以进一步参与SQLite开发或者开发自己的SQLite。
作者简介
作者:(美国)艾伦 (Grant Allen) (美国)欧文斯 (Mike Owens) 译者:杨谦 刘义宣 谢志强
目录
译者序
推荐序1
推荐序2
推荐序3
关于作者
关于技术评审
致谢
简介
第1章 SQLite介绍
嵌入式数据库
开发者的数据库
管理员的数据库
SQLite历史
谁在使用SQLite
体系结构
接口
编译器
虚拟机
后端
工具和测试代码
SQLite的特性和设计理念
零配置
移植性
紧凑性
简单性
灵活性
自由授权
可靠性
易用性
性能和限制
本书面向的读者
本书的组织结构
附加说明
总结
第2章 入门
何处获取SQLite
Windows上的SQLite
获得命令行程序
获取SQLite动态链接库(DLL)
在Windows上编译SQLite源代码
使用微软Visual C++构建SQLite DLL
用Visual C++构建动态链接SQLite的客户端
用MinGW构建SQLite
Linux、苹果Mac OS X以及其他POSIX系统上的SQLite
二进制和包
从源代码编译
命令行程序
Shell模式下的CLP
命令行模式的CLP
数据库管理
创建数据库
获得数据库的Schema信息
导出数据
导入数据
格式化
导出带分隔符的数据
执行无人值守维护
备份数据库
获得数据库文件的信息
其他SQLite工具
总结
第3章 SQLite中的SQL
数据库示例
安装
运行示例
语法
命令
常量
关键字和标识符
注释
创建数据库
创建表
修改表
数据库查询
关系操作
select命令与操作管道
过滤
限定和排序
函数(Function)和聚合(Aggregate)
分组(Grouping)
去掉重复
多表连接
名称和别名
子查询
复合查询
条件结果
处理SQLite中的Null
总结
第4章 SQLite中的高级SQL
修改数据
插入记录
更新记录
删除记录
数据完整性
实体完整性
域完整性
存储类
视图
索引
触发器
事务
事务的范围
冲突解决
数据库锁
死锁
事务的类型
数据库管理
附加数据库
数据库清理
数据库配置
系统目录
查看查询计划
总结
第5章 SQLite设计与概念
API
主要数据结构
连接和语句
核心API
可操作的控制
使用线程
扩展API
创建用户自定义函数
创建用户自定义聚合
创建用户自定义排序
事务
事务生命周期
锁状态
读事务
写事务
调整页面缓存
过渡到独占状态
调整页面缓存
等待锁
繁忙处理
使用恰当的事务
代码
使用多个连接
finalize()函数的重要性
共享缓存模式
总结
第6章 核心C API
查询封装
连接与断开连接
执行查询
获取表查询
查询准备
编译
执行
完成与重置
获取记录
获取字段信息
获取字段值
一个实例
查询参数化
参数编号
参数命名
Tcl参数
错误与异常
错误处理
繁忙情况处理
模式改变处理
操作控制
提交钩子
回滚钩子
更新钩子
授权函数
线程
共享缓存模型
线程与内存管理
总结
第7章 扩展C API
API
注册函数
步骤函数
返回值
函数
返回值
数组与内存清理器
错误处理
返回输入值
聚合
注册函数
实例
排序规则
排序法定义
简单例子
按需排序
总结
第8章 语言扩展
选择一种扩展语言
Perl
安装
连接
查询处理
参数绑定
用户自定义函数
聚合
Python
安装
连接
查询处理
参数绑定
用户自定义函数
聚合
APSW(另一种Python接口)
Ruby
安装
连接
查询处理
参数绑定
用户自定义函数
Java
安装
连接
查询处理
自定义函数和聚合
JDBC
Tcl
安装
连接
查询处理
用户自定义函数
PHP
安装
连接
查询
用户自定义函数和聚合
总结
第9章 iOS开发中的SQLite
SQLite iOS开发的先决条件
注册成为Apple软件开发者
下载并安装Xcode和iOS SDK
其他开发环境
建立iSeinfeld iOS SQLite应用
第一步:创建一个新的Xcode工程
第二步:将SQLite框架添加到工程
第三步:准备Foods数据库
第四步:为食品数据创建类
第五步:访问和查询SQLite数据库
第六步:最后包装和配置iSeinfeld应用程序
运行iSeinfeld
iOS中处理大型SQLite数据库
总结
第10章 Android开发中的SQLite
SQLite Android开发的先决条件
检查先决条件和JDK
下载和安装Android SDK Starter包
下载和安装Android开发工具
添加Android平台和组件
Android SQLite类和接口
使用基础帮助类:SQLiteOpenHelper
SQLiteDatabase类
在实际中应用SQLiteOpenHelper和SQLiteDatabase
使用SQLiteQueryBuilder类查询SQLite数据库
搭建Seinfeld Android SQLite应用程序
创建新的Android工程
将Seinfeld SQLite数据库添加到工程
查询Food数据库表
定义用户接口
连接数据和用户接口
查看完成的Seinfeld应用程序
SQLite Android应用程序的注意事项
Android数据库的备份
Android系统处理大型SQLite数据库
总结
第11章 SQLite内部机制及新特性
B-tree和Pager模块
数据库文件格式
B-tree API
显示类型、存储类以及亲缘性介绍
显示类型
类型亲缘性
亲缘性和存储
执行中的亲缘性
预写日志
WAL工作原理
激活和配置WAL
WAL的优缺点
启用WAL时SQLite数据库的操作问题
总结
索引
前沿
谨以此书献给我的母亲,感谢她对我无尽的支持!
 ;  ; 译者序
您用过FireFox(火狐)浏览器吗?您用过金山词霸、iPhone、iPad或Android系统吗?如果答案是Yes,说明您已经是SQLite用户或者从SQLite中受益了。SQLite作为一款嵌入式关系数据库,应用十分广泛,已经被大量应用在许多基础的软件中,并成为这些基础软件的组成部分。例如,您手中的iPhone或Android手机,您电脑上的浏览器或者其他软件,您访问的用PHP编写的网站等。
虽然SQLite被越来越广泛地应用,但是一直缺乏一本全面、深入浅出地介绍SQLite的书,本书就是这样一本从零开始不断深入探究SQLite的书。
本书特色鲜明,它不仅为开发人员提供了全新的数据库选择,并且全面介绍了如何应用这种选择。全书第1、2章全面细致且重点突出地介绍了SQLite的起源和特点,并与主流大型关系数据库进行比较,这可作为数据库选型的重要参考。本书也是嵌入式关系数据库研究人员的知音,因为它介绍了嵌入式数据库中最典型的代表SQLite,并对SQLite内核做了简要介绍。最重要的是,本书是SQLite相关开发者的重要帮手。从第3章开始,全面介绍SQLite中的SQL、高级SQL、核心API和扩展API以及各种语言扩展、iPhone和Android开发中如何应用SQLite等。内容翔实,实例丰富,理论与实践并举。
译者在翻译本书时,一边是感到万分的荣幸,一边也是战战兢兢。吉尔伯特海特(美国教育家)曾经说过:写了一本很糟糕的书只是犯错而已,而把一本好书翻译得很糟糕则是犯罪。但是对于本书这样最佳的SQLite理论与实践之作,即便是冒着犯罪的风险,也值得翻译出来并推荐给大家。
本书承载的内容丰富而深入。在翻译的过程中,译者也常感汗颜,原来自诩对SQLite颇为了解的我深刻感受到自己知识面的浅薄和不完整,于是翻译过程也成为了自己检讨和学习的过程,收获颇丰。本书的作者是SQLite方面的知名研究者与实践者,其中一位是PySQLite的创建者。他们有着丰富的IT从业经验,书中的很多内容都是他们长年实践的经验和心得。因此,希望大家反复阅读,必定受益无穷。
由于本书作者的知识广博,经验丰富,而译者本人知识有限、时间仓促,难免对作品的个别之处无法原汁原味地呈现给读者,在此敬请各位读者多多包涵,不辞吝教,指出纰漏。我也希望能就本书的内容与读者有更多的交流。
最后,我要感谢电子工业出版社博文视点公司的张春雨编辑在译书的过程中给予我们的莫大帮助。我还要感谢我的朋友雷昕、李晓亮、杨艳、刘争涛、吴林、杨建轩、尹相乐、季旻、房华、张晓光和东莞经济贸易学校的谢志强老师等。特别感谢北京恩墨科技有限公司技术总监、ItpubOracle数据库管理版版主张乐奕,原Oracle亚洲研发中心高级DBA,现玛氏信息技术服务有限公司亚太区数据库运营经理叶熙昌,他们的参与使得本书的质量得到了进一步的保证。
杨谦
2011年8月于北京志新村
SQLite权威指南(第二版) pdf下载声明
本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版