`
lightxun
  • 浏览: 10134 次
  • 性别: Icon_minigender_1
  • 来自: 丹东
社区版块
存档分类
最新评论

关于SQLite 与 FireBird 利弊分析

阅读更多
经查阅网上资料:

一、关于数据库简介:

SQLite    主页:http://www.sqlite.org

SQLite诞生于2000年5月,这几年增长势头迅猛无比,目前版本是3.3.8。

SQLite的特点如下:

1、无需安装配置,应用程序只需携带一个动态链接库。

2、非常小巧,For Windows 3.3.8版本的DLL文件才374KB。

3、ACID事务支持,ACID即原子性、一致性、隔离性、和持久性(Atomic、Consistent、Isolated、和 Durable)。

4、数据库文件可以在不同字节顺序的机器间自由的共享,比如可以直接从Windows移植到Linux或MAC。

5、支持数据库大小至2TB。

6、sqlite无疑是最小的一个,单文件程序,只有400k,而它生成的数据库文件也是单文件。它支持大部份SQL92标准,不过遗憾的是不支持外键与存储过程


Firebird 嵌入服务器版(Embedded Server)   主页:http://www.firebirdsql.org
从Interbase开源衍生出的Firebird,充满了勃勃生机。虽然它的体积比前辈Interbase缩小了几十倍,但功能并无阉割。为了体现Firebird短小精悍的特色,开发小组在增加了超级服务器版本之后,又增加了嵌入版本,最新版本为2.0。

Firebird的嵌入版有如下特色:

1、数据库文件与Firebird网络版本完全兼容,差别仅在于连接方式不同,可以实现零成本迁移。
2、数据库文件仅受操作系统的限制,且支持将一个数据库分割成不同文件,突破了操作系统最大文件的限制,提高了IO吞吐量。
3、完全支持SQL92标准,支持大部分SQL-99标准功能。
4、丰富的开发工具支持,绝大部分基于Interbase的组件,可以直接使用于Firebird。
5、支持事务、存储过程、触发器等关系数据库的所有特性。
6、可自己编写扩展函数(UDF)。
7、firebird其实并不是纯粹的嵌入式数据库,embed版只是其众多版本中的一个。不过做的也很小,把几个dll加起来才不到5M,但是它支持绝大部份SQL92与SQL99标准

二、sqlite和FB比,关于损坏问题:
1:突然停电或系统突然重启动导至数据损坏。sqlite对这方面很大程度上避免这个问题方面做得比较好。
2:加密功能,不用担心数据被别人复制到别的地方打开。而FB只要能复制到别的地方,随便可以打开。
3:频烦的插入删除,更新数据,不会导至数据数据库很快增长。FB数据库快速度增长是容易导至数据库损坏的原因。

这三个问题,是导至一个软件是否长期使用时的可靠性问题。
我使用了各种办法想让sqlite数据库出现损坏(在操作数据库时用突然断电,强制杀死进程,重新启动等等),都没有办到。而FB这样折腾一会数据库文件准坏,且无法修复。


三、sqlite和FB比,关于性能问题:
http://www.jbxue.com/db/6334.html
1
4
分享到:
评论

相关推荐

    SQLite3源程序分析+文件存储结详细分析.rar

    SQLite3源程序分析+文件存储结详细分析.rar SQLite3源程序分析+文件存储结详细分析.rar SQLite3源程序分析+文件存储结详细分析.rar SQLite3源程序分析+文件存储结详细分析.rar SQLite3源程序分析+文件存储结详细分析...

    SQLite3源程序分析

    主程序指的是SQLite3提供的命令行处理程序(Command Line Processor, CLP),它是SQLite3与用户交互的主要界面之一。通过分析CLP可以帮助我们更好地理解SQLite3的运行机制。 ##### 3.1 主程序流程 CLP的主要代码位于...

    整理c#链接access.sqlserver.oracle.sqlite.firebird数据库的helper

    网上整理的c#链接access,sqlserver,oracle,sqlite,firebird数据库的链接类,主要是根据msdn上的sqlhelper改写过来的,文件并非原创,希望能各位高手指点指点。

    SQLite入门与分析

    在SQLite入门与分析(七)---浅谈SQLite的虚拟机.doc中,主要讲解了SQLite如何通过虚拟机执行SQL语句。SQLite的虚拟机,也称为VDBE(Virtual Database Engine),是SQLite的核心组件。它负责解析SQL语句,将其转化为一...

    SQLite3源程序分析_v100

    ### SQLite3源程序分析 #### 一、主程序流程概览 SQLite3的源程序分析主要聚焦于其命令行处理程序(CLP),这有助于理解SQLite的内部运作机制。CLP,即命令行处理程序,是SQLite提供的用于执行SQL命令的界面。分析...

    LazSqlX:用于 MsSql、MySql、Oracle、Sqlite、Firebird 和 PostgreSql 的 Sql 管理器-开源

    MsSql、MySql、Oracle、Sqlite、Firebird 和 PostgreSql 的 Sql 管理器 Windows 版本不需要安装客户端库,所有这些都包含在安装程序中。

    SQLite数据库逆向分析1

    SQLite数据库逆向分析 SQLite数据库逆向分析是一门复杂的技术领域,涉及到软件逆向分析、数据库逆向分析、反汇编、反编译等技术领域。以下为本节课的知识点总结: 1. SQLite数据库逆向分析简介 SQLite数据库逆向...

    DbLinq 0.20.1 released(2010.04.16) -- LINQ provider for Oracle, PostgreSQL, MySQL, Ingres, SQLite, Firebird and ... SQL Server (C# 3.5-4.0)¶

    It currently supports (by order of appearance): MySQL, Oracle, PostgreSQL, SQLite, Ingres, Firebird... And still SQL Server. The DbLinq provider assemblies include: DbLinq.Firebird.dll: Firebird ...

    SQLite入门与分析.doc

    编译器则包括分词器和分析器,将 SQL 查询转化为语法树,再由代码生成器转换为针对 SQLite 的汇编代码,最终由虚拟机执行。虚拟机,即虚拟数据库引擎 (VDBE),类似 Java 虚拟机,解释执行字节码,实现数据库操作。...

    Sqlite3源码分析

    sqlite源码分析文档,sqlite源码分析文档,sqlite源码分析文档,sqlite源码分析文档,sqlite源码分析文档,sqlite源码分析文档,

    Sqlite3入门与分析.pdf

    ### Sqlite3入门与分析知识点概述 #### 一、SQLite简介 SQLite是一个开源的嵌入式关系型数据库管理系统,最初由D. Richard Hipp在2000年发布。相较于传统的数据库管理系统,SQLite具有以下特点: - **零配置**:...

    sqlite 源代码分析资料

    本资料包包含SQLite的源代码、中文手册以及相关的源代码分析资料,为深入理解SQLite的工作原理提供了全面的参考。 SQLite源代码分析: SQLite的源代码主要由C语言编写,结构清晰,易于阅读。源代码分为多个模块,...

    sqlite 查询分析器

    SQLite 查询分析器是一款专为 SQLite 数据库设计的强大可视化管理工具,它为用户提供了直观的界面,使得在 SQLite 服务器上进行数据库操作变得简单易行。SQLite 是一款轻量级的、自包含的、无服务器的 SQL 数据库...

    关于sqlite3数据库文件格式的分析

    SQLite3 数据库文件的格式是其内部运作的基础,理解和分析这种格式对于优化数据库操作、排查问题或者进行数据库恢复至关重要。 SQLite3 的数据库文件结构基于 B+ 树,这是一种高效的数据存储结构,尤其适合大量的...

    sqlite源码及分析

    SQLite源码分析: SQLite的源代码主要由C语言编写,其设计目标是实现ACID(原子性、一致性、隔离性、持久性)事务特性。源码中包含了数据库引擎的实现,包括SQL解析器、B树数据结构、事务处理、索引管理、锁机制等...

    sqlite 查询分析工具

    SQLite查询分析工具是一种用于管理和分析SQLite数据库的强大软件。SQLite是一个开源、轻量级的嵌入式数据库引擎,广泛应用于移动设备、嵌入式系统以及桌面应用程序。它不需要独立的服务器进程,可以直接在应用程序中...

    SQLite查询分析器

    SQLite查询分析器,无需安装,直接操作SQLite数据库,支持密码

Global site tag (gtag.js) - Google Analytics