我必须开始为数据库项目构建架构,但我真的不知道引擎之间的区别。
任何人都能解释这三个引擎的优点和坏处?我们必须选择其中之一,而我对他们唯一了解的就是:
有人能消除他们之间的其他差异吗?这是一个中等/大型(我们正在考虑大约100到200个表)的低预算项目,你会选择什么?还有更高的预算?
发布于 2008-10-20 00:46:11
几年前,我不得不编写一个翻译引擎;您为它提供一组sql,它将转换成当前连接的引擎的方言。我的引擎工作在Postgres (AKA PostgreSql)、Ingres、DB2、Informix、Sybase和Oracle和ANTS上。坦白地说,Oracle是我最不喜欢的(下面更多).不幸的是,对于您来说,mySql和Server不在列表中(当时两者都不被认为是真正的关系数据库管理系统-但时间确实在变化)。
不考虑引擎的质量或性能--以及制作和恢复备份的容易程度--以下是区别的主要方面:
在不让您对所有转换数据感到厌烦的情况下,下面是一个数据类型lvarchar的示例:
oracle=varchar(%x) sybase=text db2="long varchar“informix=lvarchar postgres=varchar(%x) ants=varchar(%x) ingres=varchar(%x,%y)
在我看来,最大的问题是null处理;Oracle悄悄地将空输入字符串转换为空值。...Somewhere,很久以前,我读过一篇关于“null的十七个意义”的文章,真正的观点是,空字符串和空字符串之间的区别是有用的和不平凡的!我认为Oracle在这个问题上犯了一个巨大的错误;其他人都没有这种行为(我从未见过)。
我第二个最不喜欢的是蚂蚁,因为它们与其他所有的蚂蚁不同,它们执行的完美语法的愚蠢规则是绝对没有其他人做的,虽然它们可能是唯一一家提供完美遵循标准的DB公司,但它们也是编写代码的巨大痛苦。
我最喜欢的是Postgres;它在_real_world_环境下非常快速,有很好的支持,并且是开源/免费的。
发布于 2008-10-19 16:28:23
不同SQL实现之间的差异很大,至少在幕后是如此。这块木板不足以计算所有的数字。
如果你必须问,你也必须问自己,你是否有能力就这件事作出有效和有根据的决定。
比较von和Postgres可以在这里找到
请注意,甲骨文还提供了一个特快(XE)版,功能有所减少,但可以免费使用。另外,如果你一开始就没有什么知识,你就得学会自己,我会选择任何一个,然后开始学习。
发布于 2008-10-19 16:25:22
参见维基百科上的比较表:系统 && 系统
甲骨文可能是最好的,也可能不是最好的。它很贵,但这并不意味着最好。
你看过DB2吗?赛贝斯?泰拉蒂?SQL?
https://stackoverflow.com/questions/216601
复制相似问题