几个小型数据库的比较

上传人:平*** 文档编号:14098118 上传时间:2017-10-27 格式:DOC 页数:5 大小:100.27KB
返回 下载 相关 举报
几个小型数据库的比较_第1页
第1页 / 共5页
几个小型数据库的比较_第2页
第2页 / 共5页
几个小型数据库的比较_第3页
第3页 / 共5页
几个小型数据库的比较_第4页
第4页 / 共5页
几个小型数据库的比较_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《几个小型数据库的比较》由会员分享,可在线阅读,更多相关《几个小型数据库的比较(5页珍藏版)》请在金锄头文库上搜索。

1、 几个小型数据库的比较Access,MSDE 2000,Embedded Firebird,SQLite 等都是可以免费再分发(free redistributable)的数据库。相比而言,MSDE 2000 显著缺点是需要安装,最大优点是和服务器端的 SQL Server 编程模型一致,开发便利。Access 的显著缺点是功能较少,不支持事务等常用功能,最大优点是简单、多数开发者都很熟悉,部署也很方便。SQLite 支持事务,也是一款单文件数据库,比较不足的是 .NET Data Provider 还不是很成熟。Firebird 则同时具有:单文件、部署简单不需安装(只需 XCOPY 两个文

2、件)、支持事务、存储过程、触发器,.NET Data Provider 比较稳定成熟等优点。这个星球上的数据库实在不胜枚举,这里只列一些我接触过的常见的。 可以稍微夸张点说,有交互的应用,起码得用一下数据保存,即便是自定义结构的数据保存,还是最常见的 INI、XML 等,都可以算是“数据库”,真正点的,如 DBase 系列、 FoxBase、FoxPro 、MSAccess 、InterBase 、MS SQL Server、Oracle、DB2 等,这些是商业化的数据库,前面几个只能算是数据库,后面几个是 RMDBS(关系型数据库管理系统)。 对应商业化的,有开源的:SQLite、Simpl

3、eSQL、 Berkely DB、Minosse 、Firebird ( 前身是是 Borland 公司的 InterBase)、PostgreSQL 、MySQL等。 SQLite:大家可以看我的 SQLite 系列随笔,C 编写的,可以跨操作平台,支持大部分 ANSI SQL 92,它是嵌入式的轻量级关系形数据库引擎,只需要一个 DLL,体积为 250k,数据库也只是一个文件,零配置,便可工作。既然开源,你甚至可以把它嵌入你的程序中。核心开发人员只有一个,最近加入了另外一个,也就是 2 个人而已,实在佩服,目前发展到 3.1.0,相当高效稳定,有开源驱动在 上有其 ADO.NET Dat

4、a Provider for SQLite :https:/ 。 SimpleSQL:相对 SQLite 要大几倍,但也是轻量级的,功能稍微强大一点,C+编写,有 OLE、Java 等版本。 Berkely DB:C+编写的大型关系型数据库系统,还额外地支持 XML(把 XML 当成数据库),号称 2 百万的安装量,MySQL 也只不过号称 5 百万安装量而已,跨平台。 Minosse:纯 C#编写的大型关系型数据库系统,理想是超越 MS SQL Server!最新版本:0.2.0,真难得,纯 Java 写的看得多了,纯 C#的,不是移植别人的,还是第一个,佩服作者:包含 C/S 和嵌入式版本

5、,并可跨越大部分平台,因为它不用 Windows 的东西,可以在 Mono 下编译。 Firebird:这个东西太牛了,目前有 1.5 稳定版本已经拥有大量特性,完全支持 ANSI SQL92、98 等,一些超酷的特性让人疯狂( 1.0 特性、 1.5 特性,从这里开始研究),主要开发人员是一个俄罗斯人,目前开发队伍已经扩大到近 100 人,有 3 种模式,单机独立,典型 C/S,超级服务器。2.0版本和 3.0 版本将在近期推出,看完其 路线图 (2.0、3.0) 你就会疯掉。有 .NET 驱动,目前是 1.7beta 版。主要特性: A.C.I.D; MGA(任何版本的引擎都可以处理同一数

6、据库记录); PSQL(存储过程)超级强大, ms sql 相对的太次,它啥都能在服务器端实现并推送到客户端成为强大的报表,存储过程; 触发器都可以在客户端获取监控追踪; 自动只读模式; 创新的事务保证绝对不会出错; 24*7 运行中仍然可以随时备份数据库; 统一触发器:任何操作都可以让某表唯一的触发器来总控; 大部分语言都可以写 plug-in,并直接在存储过程中调用函数; c-c+,更加少的代码但更加快的速度; 3 种运行模式,甚至可以嵌入式; 主流语言都可以调用它; 动态 sql 执行; 事务保存点; PostgreSQL:POSTGRES 数据库的后开源版本,号称拥有任何其他数据库没有

7、的大量新特性,似乎目标是要做超大型的 OO 关系型数据库系统,目前已经发展到 8.0,有 .NET 驱动,中文官方网站 有详细介绍。 MySQL:这个,不用说了吧?号称全球最受欢迎的开源数据库,但让我奇怪的是,PostgreSQL 都有简体中文的支持:包括内核、管理工具、QA 等等,在最新版本 MySQL 中,我却没有发现. ,有 .NET 驱动,其中 MySQL Connector/Net 就是原来在 上的 ByteFX.Data 项目,作者已经加入了 MySQL 团队,参看 感慨 20 之开源的前途/钱图?(数据库)。=最近在学习 Firebird Embeded Database。作为

8、一款单文件型小型数据库,Firebird 具有很多吸引人的特征,比如支持事务、支持存储过程、触发器等,而且 Embeded 版本的 Firebird 在 .NET 开发中只需要拷贝两个文件:一个 fbembed.dll (非托管但不需要注册的动态链接库)和一个 ADO.NET Data Provider 的 FirebirdSql.Data.Firebird.dll。这些特征都非常适合那些需要在客户端存储一些数据,但又不想安装数据库(比如MSDE)软件的情形。据称,在国外,需要使用客户端数据库的情况中,有 30%左右的开发者选择 Access,有 30%的开发者选择 MSDE 2000,有 3

9、0%的开发者选择Embedded Firebird,剩余 10%选择其他小型数据库,如 SQLite,MySQL 等。上面所说的 Access,MSDE 2000,Embedded Firebird,SQLite 等都是可以免费再分发(free redistributable)的数据库。相比而言,MSDE 2000 显著缺点是需要安装,最大优点是和服务器端的 SQL Server 编程模型一致,开发便利。Access 的显著缺点是功能较少,不支持事务等常用功能,最大优点是简单、多数开发者都很熟悉,部署也很方便。SQLite 支持事务,也是一款单文件数据库,比较不足的是 .NET Data Pr

10、ovider 还不是很成熟。Firebird 则同时具有:单文件、部署简单不需安装(只需 XCOPY 两个文件)、支持事务、存储过程、触发器,.NET Data Provider 比较稳定成熟等优点。Firebird 本身有 SuperServer 和 Embedded 版本之分,后者只能本机访问,不接受 TCP 连接。对于开发者而言,从 Embedded 数据库切换到SuperServer,只需更改数据库连接串中的 ServerType 值就行。但是,在你正式决定使用?Firebird 之前,请你注意下面这个 known issue(已知问题): Firebird 数据库文件不能放置在含有中

11、文等字符的路径中。Firebird 的文件名不可以用中文字符,所在路径的任何部分如果含有中文字符,都将无法访问到数据库。举个例子,中文 Windows 桌面所在的目录一般是“C:Documents and Settings用户名桌面” ,如果数据库文件放置在桌面上,就无法访问到。当然,Firebird 内部是可以存储中文字符的,因为它支持 GB2312 和 UNICODE 等字符集。我已向 Firebird 开发者报告了这个 BUG,希望能早日解决这个 BUG。需要注意一点,连接串中的 Database 地址如果使用相对路径,请一定注意这个相对路径是相对于 fbembed.dll 所在目录的。

12、小型数据库的选择(轻量级数据库)一直使用 Sql Server 开发,没有用过 Access 之外其它的 DB。最近正想做个小型工具,这种小东西当然不可能用 Sql Server 数据库啦,可又不想用 Access,于是想起在 Blog 中看到关于小型数据库的文章,收集如下资料:据称,在国外,需要使用客户端数据库的情况中,有 30%左右的开发者选择 Access,有 30%的开发者选择 MSDE 2000,有 30%的开发者选择Embedded Firebird,剩余 10%选择其他小型数据库,如 SQLite,MySQL 等。引用Embedded Firebird DB 简介 最近在学习 F

13、irebird Embeded Database。作为一款单文件型小型数据库,Firebird 具有很多吸引人的特征,比如支持事务、支持存储过程、触发器等,而且 Embeded 版本的 Firebird 在 .NET 开发中只需要拷贝两个文件:一个 fbembed.dll (非托管但不需要注册的动态链接库)和一个 ADO.NET Data Provider 的 FirebirdSql.Data.Firebird.dll。这些特征都非常适合那些需要在客户端存储一些数据,但又不想安装数据库(比如MSDE)软件的情形。据称,在国外,需要使用客户端数据库的情况中,有 30%左右的开发者选择 Acces

14、s,有 30%的开发者选择 MSDE 2000,有 30%的开发者选择Embedded Firebird,剩余 10%选择其他小型数据库,如 SQLite,MySQL 等。上面所说的 Access,MSDE 2000,Embedded Firebird,SQLite 等都是可以免费再分发(free redistributable)的数据库。相比而言,MSDE 2000 显著缺点是需要安装,最大优点是和服务器端的 SQL Server 编程模型一致,开发便利。Access 的显著缺点是功能较少,不支持事务等常用功能,最大优点是简单、多数开发者都很熟悉,部署也很方便。SQLite 支持事务,也是一

15、款单文件数据库,比较不足的是 .NET Data Provider 还不是很成熟。Firebird 则同时具有:单文件、部署简单不需安装(只需 XCOPY 两个文件) 、支持事务、存储过程、触发器, .NET Data Provider 比较稳定成熟等优点。Firebird 本身有 SuperServer 和 Embedded 版本之分,后者只能本机访问,不接受 TCP 连接。对于开发者而言,从 Embedded 数据库切换到SuperServer,只需更改数据库连接串中的 ServerType 值就行。但是,在你正式决定使用?Firebird 之前,请你注意下面这个 known issue(已知问题): Firebird 数据库文件不能放置在含有中文等字符的路径中。Firebird 的文件名不可以用中文字符,所在路径的任何部分如果含有中文字符,都将无法访问到数据库。举个例子,中文 Windows 桌面所在的目录一般是“C:Documents and Settings 用户名桌面” ,如果数据库文件放置在桌面上,就无法访问到。当然,Firebird 内部是可以存储中文字符的,因为它支持 GB2312 和 UNICODE 等字符集。我已向 Firebird 开发者报告了这个 BUG,希望能早日解决这个 BUG。需要注意一点,连接串中的 D

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号