选择一款桌面数据库

3
我正在寻找一个桌面/嵌入式数据库。我正在考虑的两个候选者是Microsoft SQL Server CE和Oracle Lite。如果有人使用过这两个产品,如果您能进行比较,那就太好了。我在网上找不到任何比较。
后端数据库是Oracle10g。
更新:澄清一下,业务需求是具有离线功能的客户端-服务器应用程序(因此需要在客户端上使用本地数据存储)。
7个回答

9
如果后端数据库是Oracle 10g,使用Oracle Lite可能更容易 - 这样您就不必在同一项目中使用两种完全不同的SQL方言。
顺便说一下,在我的产品中我使用SQLite作为桌面数据库。

4
我还使用SQLite作为桌面数据库。它速度很快,不需要单独的进程或任何先前的安装。您只需要一个库来访问数据作为代码的一部分。
根据您的澄清,在考虑其他选项之前,我会评估OracleXE和Oracle 10g Lite。坚持相同的技术,SQL/Oracle在SQL语法和数据类型上存在一些有趣的分歧。我想你在SQLite中也会遇到同样的问题。

4

我赞同使用SQLite。不确定您想要实现什么,但如果您需要进行任何与同步相关的本地存储,则SQLite是一个不错的选择。它被广泛采用并得到了大量社区支持。


3
也许我没有完全理解这里的需求。您正在开发针对10g的应用程序,但是对于自己的测试/开发环境,您需要一个更轻量级的数据库?
或者,您正在开发一款与10g数据库同步在线,但离线时使用本地存储的应用程序?
在这两种情况下,我建议仅使用Oracle,因为这将简化您的代码。
在第一种情况下,我想知道为什么您没有一个10g QA机器,所有开发人员都可以连接到它。

你提到的第二种情况就是我所说的:“当在线时,与10g数据库同步的应用程序,在离线时使用本地存储。” 我已经在问题中进行了澄清。 - Jonathan Rauch

1

使用SQL Server CE的一个优点是它是免费的,并且您可以使用同步框架将其与任何可访问ADO.NET的数据库同步。

此外,相同的SQL CE文件可用于PC和移动设备,如果您使用.NET开发应用程序,则可以在桌面和移动设备上使用相同的代码而不需要进行更改。


0
你可能想看看Oracle XE。我记不清所有的区别,但O-Lite不适合我的项目需求。Oracle XE是一个非常适合本地开发的数据库。
Brad

0

正如@Nir所提到的,拥有同质化的环境会更好。但是如果你决定不使用Oracle Light,我强烈建议你看一下Firebird。它是桌面数据库场景中最好的选择之一。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接