SQLite 3.10 发布,性能优化
SQLite 3.10 发布,更新如下:
-
Added support for LIKE, GLOB, and REGEXP operators on virtual tables.
-
Added the colUsed field to sqlite3_index_info for use by the sqlite3_module.xBestIndex method.
-
Enhance the PRAGMA cache_spill statement to accept a 32-bit integer parameter which is the threshold below which cache spilling is prohibited.
-
On unix, if a symlink to a database file is opened, then the corresponding journal files are based on the actual filename, not the symlink name.
-
Added the "--transaction" option to sqldiff.
-
Added the sqlite3_db_cacheflush() interface.
-
Added the sqlite3_strlike() interface.
-
When using memory-mapped I/O map the database file read-only so that stray pointers and/or array overruns in the application cannot accidently modify the database file.
-
Added the experimental sqlite3_snapshot_get(), sqlite3_snapshot_open(), and sqlite3_snapshot_free() interfaces. These are subject to change or removal in a subsequent release.
-
Enhance the 'utc' modifier in the date and time functions so that it is a no-op if the date/time is known to already be in UTC. (This is not a compatibility break since the behavior has long been documented as "undefined" in that case.)
-
Added the json_group_array() and json_group_object() SQL functions in the json extension.
-
Added the SQLITE_LIKE_DOESNT_MATCH_BLOBS compile-time option.
-
Many small performance optimizations.
Portability enhancements:
-
Work around a sign-exension bug in the optimizer of the HP C compiler on HP/UX. (details)
Enhancements to the command-line shell:
-
Added the ".changes ON|OFF" and ".vfsinfo" dot-commands.
-
Translate between MBCS and UTF8 when running in cmd.exe on Windows.
Enhancements to makefiles:
-
Added the --enable-editline and --enable-static-shell options to the various autoconf-generated configure scripts.
-
Omit all use of "awk" in the makefiles, to make building easier for MSVC users.
Important fixes:
-
Fix inconsistent integer to floating-point comparison operations that could result in a corrupt index if the index is created on a table column that contains both large integers and floating point values of similar magnitude. Ticket 38a97a87a6.
-
Fix an infinite-loop in the query planner that could occur on malformed common table expressions.
-
Various bug fixes in the sqldiff tool.
Hashes:
-
SQLITE_SOURCE_ID: "2016-01-06 11:01:07 fd0a50f0797d154fefff724624f00548b5320566"
-
SHA1 for sqlite3.c: b92ca988ebb6df02ac0c8f866dbf3256740408ac
更多内容请看:Version 3.10.0
下载地址:
http://www.sqlite.org/download.html
SQLite是遵守ACID的关联式数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。
不像常见的客户-服务器范例,SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。所以主要的通信协议是在编程语言内的直接API调用。这在消耗总量、延迟时间和整体简单性上有积极的作用。整个数据库(定义、表、索引和数据本身)都在宿主主机上存储在一个单一的文件中。它的简单的设计是通过在开始一个事务的时候锁定整个数据文件而完成的。