我们正在升级我们的系统以支持群集和自动故障转移功能。我们的业务在SQL Server Express上运行.NET 4应用程序,Web应用程序和服务。我们可以升级到SQL Server Standard,但是成本促使我们考虑其他选择。将我们的.NET数据层与ODP.NET集成是否合法?在搜索之后,我看到了一两个负面的倾向性的陈述(viz),但它似乎是people are doing it anyway。我们将失去Visual Studio IDE中的哪些开发功能?谢谢你的帮助!
答案 0 :(得分:3)
好吧,我现在已经在Oracle和MS SQL Server工作了20多年,完成了很多项目。有些项目现在运行超过10年,包括所有更新,维护等。
我的快速回答是:留在MS SQL Server。如果你有非常好的技术原因,或者如果你计划真正的ENORMOUS数据库,并且你有足够的人员来处理所有的管理,那么只去Oracle。
主要原因是SQL Server更容易维护;它还可以很好地集成到Microsoft环境中。
相比之下,甲骨文的学习曲线陡峭。 Oracle的处理比MS SQL Server更“手动”。嗯,这也是一件好事,因为你控制着每一个小细节,但这也意味着你需要学习很多东西;或者你需要支付专家费用。找到真正知道该做什么的人并不容易。我非常喜欢这两种系统,但根据经验,我通常建议使用MS SQL Server。
答案 1 :(得分:0)
我多年来一直在使用.net和Oracle,只要有可用的选项,就可以远离它。
如果您的所有数据库代码都在存储过程中并且您通过代码隐藏或库调用它并且您使用ansi sql,那么从ms sql到oracle的迁移将是相当轻松的。
如果您使用TableAdapters,他们会重新编写您放入oldschool oracle 8语法的任何sql,如table1,table2,table3,然后有一个很大的where子句来执行连接条件。还有一些奇怪的错误,有时在SQL Developer中运行良好的sql在TableAdapters中不起作用。
如果您使用Entity Framework迁移应该非常简单,但MS SQL驱动程序要比Oracle更好。由于当前驱动程序存在一些错误,因此在Oracle中有一些我无法通过EF执行的查询。
如果您需要更多信息,请告诉我们。
另外如果Cost是考虑迁移的主要原因,为什么不选择mysql?
答案 2 :(得分:0)
由于您已经在使用MS SQL,因此您必须习惯于它的工作方式,无论是实体框架还是任何其他数据执行。是的offcource,microsoft拥有非常高的许可率。但是如果你想转移到任何其他数据库,那就完全没问题了。我个人使用过MS SQL和MySQL。最初,您可能会遇到一些与语法相关的问题,但请记住,获取和保存数据的逻辑保持不变。此外,它还有一个好处,你必须学习一门新语言,这也是以更少的钱为代价的。