设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客

轻量级数据库:SQLite 3.7.3 发布

2010-10-9 19:06| 发布者: walkerxk| 查看: 6414| 评论: 0|来自: OSMSG

摘要: SQLite是遵守ACID的关系数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp创建的公有领域项目。 不像常见的客户端/服务器结构范例,SQLite引擎不是个 程序与之通信的独立进程,而是连接到程序中成为它 ...

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

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

特征 :

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

多个进程或线程可以访问同一个数据而没有问题。可以并行的满足多个读访问。只有在其他访问当前不被服务的时候才能满足写访问;否则写访问失败并带有一个错误代码(也可以在可配置的超时过期之后自动的重试)。

提供了叫做sqlite的一个独立程序用来查询和管理SQLite数据库文件。 它也充当写使用SQLite库的应用的一个例子。

语言绑定:

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

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

还有一个Python模块叫做PySQLite。

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 3.7.3 更新:

  • Added the sqlite3_create_function_v2() interface that includes a destructor callback.
  • Added support for custom r-tree queries using application-supplied callback routines to define the boundary of the query region.
  • The default page cache strives more diligently to avoid using memory beyond what is allocated to it by SQLITE_CONFIG_PAGECACHE. Or if using page cache is allocating from the heap, it strives to avoid going over the sqlite3_soft_heap_limit64(), even if SQLITE_ENABLE_MEMORY_MANAGEMENT is not set.
  • Added the sqlite3_soft_heap_limit64() interface as a replacement for sqlite3_soft_heap_limit().
  • The ANALYZE command now gathers statistics on tables even if they have no indices.
  • Tweaks to the query planner to help it do a better job of finding the most efficient query plan for each query.
  • Enhanced the internal text-to-numeric conversion routines so that they work with UTF8 or UTF16, thereby avoiding some UTF16-to-UTF8 text conversions.
  • Fix a problem that was causing excess memory usage with large WAL transactions in win32 systems.
  • The interface between the VDBE and B-Tree layer is enhanced such that the VDBE provides hints to the B-Tree layer letting the B-Tree layer know when it is safe to use hashing instead of B-Trees for transient tables.
  • Miscellaneous documentation enhancements.

点击进入 SQLite 项目主页


酷毙

雷人

鲜花

鸡蛋

漂亮

相关阅读

  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部