`
xinklabi
  • 浏览: 1560413 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
文章分类
社区版块
存档分类
最新评论

轻量级数据库SQLite简介

 
阅读更多

引用自:维基百科

 

SQLite是遵守ACID关系数据库管理系统,它包含在一个相对小的C中。它是D.RichardHipp创建的公有领域项目。

不像常见的客户端/服务器结构范例,SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。所以主要的通信协议是在编程语言内的直接API调用。这在消耗总量、延迟时间和整体简单性上有积极的作用。整个数据库(定义、表、索引和数据本身)都在宿主主机上存储在一个单一的文件中。它的简单的设计是通过在开始一个事务的时候锁定整个数据文件而完成的。

特征[编辑]

库实现了多数的SQL-92标准,包括事务,就是代表原子性一致性隔离性持久性的(ACID),触发器和多数的复杂查询。不进行类型检查。你可以把字符串插入到整数列中。例如,某些用户发现这是使数据库更加有用的创新,特别是与无类型的脚本语言一起使用的时候。其他用户认为这是主要的缺点。

多个进程线程可以同时访问同一个数据而没有问题。可以同时平行读取同一个数据库。但同一时间只能有一个进程或线程进行数据写入;否则会写入失败并得到一个错误信息(或者会自动重试一段时间,而这重试时间的长短是可以设置的)。

程序设计者还提供了一个叫做sqlite3的独立程序用来查询和管理SQLite数据库文件。SQLite的用户可以把这个程序当作如何写SQLite应用程序的示例。

语言绑定[编辑]

可以从C/C++程序中使用这个库,还可以获得对Tcl和一些其他脚本语言的绑定。

CPANDBD::SQLite上有一个PerlDBI/DBD模块,它不是到SQLite的接口,而是包括整个SQLite数据库引擎在其中并不需要任何额外的软件。

Python自2.5之后将pysqlite内置,模块名为sqlite3。[1][2]

PHP从PHP 5.0开始已经包含SQLite,但是自5.1版之后,SQLite开始成为一个延伸库。SQLite能与PHP4一起工作,但不包含在PHP4里面。

Rails2.0.3将缺省的数据库配置改为了SQLite 3。

Delphi:DISQLite3作为Delphi的一个第三方控件,不是SQLite的API,也不是接口,而是把SQLite数据库引擎重新封装编译到Delphi的目标程序中,无需任何外部DLL。支持所有版本Delphi。DISQlite3

SQLite管理客户端[编辑]

SQLite亦可以作为桌面数据库使用,以下为第三方SQLite的GUI软件。例如,

  • Navicat导航猫for SQLite是一套专为SQLite设计的强大数据库管理及开发工具。它可以用于任何版本2或3的SQLite数据库,并支持大部份SQLite的功能,包括触发器、索引、查看等。。
  • SQLiteMan,使用Qt开发的一个SQLite客户端,支持多语言、跨平台。SQLiteMan
  • SQLite Manager,以Firefox浏览器的扩展形式提供的SQLite客户端。
  • SQLite Database Browser,一款连接SQLite数据库的图形客户端。
  • SqlPro SQL Client,又一款能工作在SQLite数据库上的图形客户端。
  • SQLiteSpy,是一个快速和紧凑的GUI SQLite数据库管理器。它读取sqlite3的文件和执行对他们的SQL。它的图形用户界面使得它很容易探索,分析和处理sqlite3的数据库。SQLiteSpy

参见[编辑]

外部链接[编辑]

数据库管理系统(DBMS) (查看 · 讨论 · 编辑)

概念
数据库 · 数据模型 · 数据库存储结构英语Database storage structures · 关系 (数据库) · 关系模型 · 分布式数据库 · ACID ( 原子性 · 一致性 · 隔离性 · 持久性 ) · Null值
关系数据库 · 关系代数 · 关系演算 · 元组关系演算 · 域关系演算 · 数据库规范化 · 数据库完整性 · 实体完整性 · 引用完整性 · 关系数据库管理系统 
主键 · 外键 · 代理键 · 超键 · 候选键 

数据库组件
触发器 · 视图 · 数据库表 · 指标 (数据库) · 事务日志英语Transaction log · 数据库事务 · 并发控制 · 乐观锁 · 悲观锁 · 数据库索引 
存储程序 · 数据库分区

SQL
分类: 数据查询语言 (DQL) - 数据定义语言 (DDL) - 数据操纵语言 (DML) - 数据控制语言 (DCL)
指令:SELECT · INSERT · UPDATE · MERGE · DELETE · JOIN · UNION · CREATE · DROP · Begin work · COMMIT · ROLLBACK · TRUNCATE · ALTER
安全: SQL注入攻击 · 参数化查询

数据库管理系统的实施

实施类型
关系数据库 · 文件型数据库 · Deductive · 维度化数据库 · 层次结构式 · 图形数据库 · 对象数据库 · 对象关系数据库 · Temporal · XML数据库

数据库产品
对象型 (对比) · 关系型 (对比)

数据库成分
数据查询语言 · 查询优化器 · 查询计划 · 嵌入式SQL · ODBC · JDBC · OLE DB

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics