我想在postgre和firebird数据库之间做出选择。该数据库将安装在带有asp.net 3.5的Windows 2003服务器上。我不想因为价格问题而使用sql server而且我不想要MySQL我对它以及.net连接器和会员提供商有不好的经验。
答案 0 :(得分:10)
我一直对Postgres印象深刻;它传统上具有比MySQL更完整的功能集(在ACID合规性,对高级查询的支持等方面),它具有可靠的Windows ODBC驱动程序,并且其文档严格指出它偏离SQL标准的任何领域。 (似乎所有数据库都在一个方面或另一个方面有所偏差,但Postgres是我见过的唯一一个确保你知道什么时候这样做的人。)我没有尝试过你描述的使用场景,但是我在Linux上运行它并从Windows ODBC和Linux客户端访问它都没有问题。
我对Firebird没有任何经验;遗憾。
答案 1 :(得分:10)
我从1.0开始使用firebird数据库
我很满意
我正在使用Windows和Linux
前一段时间,我曾经和odbc合作过。没问题,很容易
易于安装,维护非常小,岩石
在多个文件中划分数据库是一个选项,但我不建议你这样做
服务器崩溃(电子问题或完整硬盘)后,系统继续工作,无需任何维护
我有关于测试的第2.1节和关于生产的1.5
我正在使用flamerobin来管理两个版本
海伦的书非常适合学习火鸟
我还测试并阅读了关于postgresql的内容。
它看起来很棒的数据库服务器
很长一段时间以来,他们一直在使用多代记录(自从开始以来,在groton数据库之前的interbase之前就像火鸟一样)
在postgresql上,现在你需要腾出记录(在firebird上它被称为扫描)
有人告诉你,这不是postgresql的必要条件,但我不这么认为
postgresql有更好的语言。你可以用这种语言编写自己的函数(在firebird上你必须在c,c ++等上编写新函数)。
postgresql有更多数据类型。事实上,你有几个。 您还可以完整搜索。
在postgresql上你也有正常的表达(我想在哪里,因此有替代选项)。这个功能将很快在firebird上准备好
无论如何,我对火鸟和它的进化感到非常满意。
Postgresql和firebird正在改进,而且它们之间存在差异
许多评论firebird和postgresql的评论都是从...复制的 http://www.firebirdsql.org/dotnetfirebird/blog/2005/03/firebird-advantages-over-postgresql.html
这是一个古老的比较。我不认为.net上的postgresql驱动程序现在还不成熟使用firebird,您无法从一个数据库连接到另一个数据库(在短期内可能会连接)
Firebird比postgresql更小更容易,但它在性能,稳定性和低维度方面也非常出色
再见
答案 2 :(得分:8)
我已经使用Firebird好几年了。它坚如磐石,我很高兴。 Borrie的“The Firebird Book”& amp;它的更新。使用IBexpert可以获得令人敬畏的管理功能。
答案 3 :(得分:8)
我在6年多前一直在使用PostgreSQL,Firebird,Oracle,MySQL,MSSQL,而我的首选是Firebird和PostgreSQL。我不喜欢MySQL,因为商业许可证不便宜,MySQL缺乏一些功能。 我问你FB和Pg之间我最喜欢的是什么......它的要求和需求各不相同。当速度是必须的时候,我觉得Firebird的效果更好。我一直在使用非常大的数据库环境,我没有遇到任何问题。 PostgreSQL在用PHP,Python和Ruby开发的网站和互联网应用程序中表现更好,但我认为这不会有太多时间。在过去的几个月里,大公司都希望FB成为一个非常严肃的数据库。我建议你FB。尝试一下,给它一个机会,你不会失望。
答案 4 :(得分:5)
我们从出生就开始使用Firebird。其实我们喜欢这个数据库:)
答案 5 :(得分:5)
我喜欢使用Postgres - 它功能强大,快速,可靠且记录完备。 PL / PgSQL语言的功能与您可以想象的一样强大,我无法想到我遇到的一个严重问题。大多数问题往往是用户创建的问题,并在深入研究文档后得到解决。
如果您对“成年”数据库(即不是MS Access之类的)有所了解,或者准备好学习,我会全心全意地推荐Postgres。
无法对Firebird发表评论,因为我还没有使用它
答案 6 :(得分:5)
Firebird + FreeadhocUDFs + IBExpert,只是编程。
我们有2个生产系统已有6年 (20个域,200个表,50个视图,370个存储过程,600个触发器, 205个生成器,11个,角色等等)已经过测试迁移到PostgreSQL(仅限 测试,我们喜欢Firebird)。
在具有传统数据类型的表中(整数,varchar,日期,数字等) 在适当的情况下,差异可以是其中一个或另一个 但在存储过程中,Firebird比Postgresql强大得多, 更加简单和优雅。
两三年,任何Linux发行版,不包括Firebird,只有Mysql和Postgresl。 今天不是没有,但tradicionesles发行(ubunutu / opensuse / fedora / centos等等)和 Firebird包含在他们的存储库中。
Postgresql并不是说比Firebird差,Firebird并不比Postgresql好多少。 但我毫不犹豫地说Firebird没有什么可以羡慕Postgresql,并且在很多方面更强大。
(抱歉我的英语不好)
答案 7 :(得分:4)
自2005年以来,我一直在使用Firebird,在Delphi,C#和ASP.NET中编写应用程序。我的项目中从未有过腐败的数据库。我从不需要使用其他数据库。 为什么Firebird而不是PostgreSQL? 因为Firebird是:
好。如果您使用Firebird,则不需要其他数据库。 :)
答案 8 :(得分:4)
他们都很酷。然而,Firebird的一大优势是它的.net数据提供商。良好的成熟解决方案,与buggy npgsql(或一些付费的Postgres驱动程序)。因此,主要选择您更熟悉的数据库或您的开发团队技能是什么。
Postgres和Firebird都是出色的数据库。
答案 9 :(得分:4)
Firebird非常棒,坚固,易于维护,安装和维护占地面积小(嵌入式版本) 唯一的缺点是:您必须进行备份和还原以消除物理上删除的记录。 所以对于一个必须24/7/365的系统来说这是一个巨大的限制。这不是我的情况所以没有问题。
PostgreSQL没有那个问题(但我从未使用过它)。 一位朋友在PostgreSQL上使用linux服务器运行一家拥有数百万笔交易的整个运输公司。 java和他很开心。但是维护比火鸟更重。
此外,如果您使用delphi,Firebird更适合。
答案 10 :(得分:3)
Firebird Rocks man,见link Firebird Advantages over PostgreSQL
成熟的Windows支持。 Windows上支持Firebird很长一段时间,并且经过了很好的测试。自8.0以来,PostgreSQL本身支持Windows。还只有几个月......
成熟的ADO.NET提供商。 Npqsql(PostgreSQL ADO.NET提供商)仍处于测试阶段。 Firebird ADO.NET提供程序支持嵌入式Firebird,服务API(备份,恢复,统计,批量SQL执行......)。
嵌入版。嵌入式版本(2 MB运行时和轻松切换到独立服务器)似乎是Firebird的最大优势之一。
<强>许可即可。 LGPL(Npgsql被LGPL覆盖)似乎不如IPL商业友好(至少它是一种不那么清晰的语言)。
Firebird开源数据库服务器赢得SourceForge Community Choice Award(在“最佳企业项目”类别中)。
再见。
答案 11 :(得分:3)
我已经使用Firebird 8年了,而且非常强大。
检查此链接http://www.ib-aid.com/articles/item104,看看Firebird是一个非常好的数据库。
Postgres的.NET驱动程序并不成熟,而firebird .net提供程序甚至支持实体框架!!
答案 12 :(得分:3)
我推荐Firebird,大多数功能都相同 1. FB - 支持表中的多个排序规则 2. FB - 成熟司机的更多选择 3. FB - 由Thread或Process管理的连接取决于您的使用/设置 4. FB - 嵌入式支持
不推荐 远离MS SQLExpress
有点退缩 如果下面的条件属实,FB-blob处理不是很好 但是如果你将blob列移动到分离的表中,那么blob没有问题 一个。大规模数据挖掘/操作 湾blob列是用其他数据列定义的
答案 13 :(得分:2)
我们从1.0v开始使用Firebird。它稳定,坚固,开箱即用,极易安装和维护。
我们使用.Net和Delphi开发。
如果您选择FB,如果您需要一些提示,请随时与我们联系。
Paulo Junqueira。
答案 14 :(得分:2)
功能否1:Firebird需要0管理,比Postgresql更易于使用 (想想sqlite就像oracle / postgresql一样易于使用)
2.Firebird确实具有嵌入式模式,并且在2.5
中完全是多线程的3.And Firebird完全是多线程的,其中Postgresql不是
所以我们在这个领域领先至少2年或更长时间
“所有后端在一个进程中作为线程运行(不需要) 这消除了我们从当前设置中获得的过程保护。线程创建通常与现代系统上的进程创建相同,因此使用纯线程模型似乎是不明智的,MySQL和DB2已经证明线程引入的问题与它们解决的问题一样多。已经讨论了线程化的特定操作,例如I / O,seq扫描和连接管理,并且可能会实现这些操作以启用特定的性能功能。 迁移到线程引擎还需要暂停PostgreSQL上的所有其他工作一到两年。“
稍后我将更新帖子,其中包含更多功能和链接原因 http://mapopa.blogspot.com/2010/10/where-firebird-is-better-than.html
答案 15 :(得分:1)
正如其他人所指出的那样,PostgreSQL在功能,速度和可靠性方面非常出色。但是,在开发了一个企业.Net应用程序之后,我不得不说它不像SQL Server那样容易与Visual Studio相结合。除此之外,SQL Server vs PostgreSQL有点像Windows GUI和Linux shell:一个很容易使用,但另一个更快,更强大,ONCE你已经习惯了。
显然你不能通过ODBC驱动程序使用LINQ,如果你使用有时连接的移动设备开发系统,你将失去自动同步的选项,否则你将无法使用SQL Server和SQL Server Compact。< / p>
答案 16 :(得分:0)
Firebird 的一个分支是 Oracle克隆,名为 Fyracle ,甚至可以运行 Compiere 。在this页面上,您可以找到作者选择Firebird优于 PostgreSQL 的原因,这也可能有助于您做出决定。从这句话中可以看出这种Oracle仿真的成功程度:
Firebird-Fyracle支持专业 基于Oracle的ERP / CRM应用程序 “Compiere” - 几乎没有变化 到Compiere代码库。 Fyracle有 从版本开始支持Compiere 2.4.2b,包含超过20,000行的PL / SQL。目前的发布, 2.5.3c,将大多数PL / SQL移动到用Java编写的存储过程中, 这也得到了支持 火鸟-Fyracle。
答案 17 :(得分:-5)
为什么不尝试SQL Express从Microsoft免费使用的缩小版SQL。