本文共 645 字,大约阅读时间需要 2 分钟。
轻量级: SQLite和C/S模式的数据库软件不同,它是进程内的数据库引擎,因此不存在数据库的客户端和服务器。 使用SQLite一般只需要带上它的一个动态库,就可以享受它的全部功能。而且那个动态库的尺寸也挺小,以版本3.6.11为例,Windows下487KB、Linux下347KB。 单一文件: 所谓的“单一文件”,就是数据库中所有的信息(比如表、视图、触发器、等)都包含在一个文件内。 这个文件可以copy到其它目录或其它机器上,也照用不误。 内存数据库(in-memory database): 这年头,内存越来越便宜,很多普通PC都开始以GB为单位来衡量内存(服务器就更甭提了)。 这时候,SQLite的内存数据库特性就越发显得好用。 SQLite的API不区分当前操作的数据库是在内存还是在文件(对于存储介质是透明的)。 所以如果你觉得磁盘I/O有可能成为瓶颈的话,可以考虑切换为内存方式。 切换的时候,操作SQLite的代码基本不用大改,只要在开始时把文件Load到内存,结束时把内存的数据库Dump回文件就OK了。在这种情况下,前面提到的“online backup API”就派上用场了,聪明的同学应该明白我为啥这么期待backup功能了吧? 缺点: 1. 并发访问的锁机制 SQLite在并发(包括多进程和多线程)读写方面的性能不太理想。数据库可能会被写操作独占,从而导致其它读写操作阻塞或出错; 2. SQL标准支持不全如不支持外键约束;看来还是优点多于缺点!呵呵!
转载地址:http://bqnws.baihongyu.com/