我的C#应用​​程序的最佳数据库选择

时间:2012-06-18 20:11:19

标签: c# database

我正在编写一个涉及与数据库交互的应用程序。用户将使用该应用程序,范围为100到1000,数据库应该能够存储多达100,000行数据。

以前我使用的是Microsoft Access,但我的用户需要为我的应用程序安装microsoft access数据库引擎才能按预期运行。我希望我的应用程序尽可能轻便/便携,所以有没有更好的替代方案,用户不需要安装任何第三方组件来运行我的应用程序?

5 个答案:

答案 0 :(得分:1)

取决于数据库是服务器端还是客户端。

如果它是服务器端,那真的取决于你,我会亲自去SQL Server,因为我知道最好,甚至是mySql / phpMyAdmin组合。但是,如果要驻留在客户端计算机上,请尝试使用SQLite(只是一个警告,尽管它与名称一样,LITE,因此可能不支持许多更复杂的SQL)。 SQLite可能正是您所需要的,具体取决于项目中涉及的复杂程度。

另外:iPhone,Blackberry和Android也支持SQLite。所以,如果你想要移动,没问题。

答案 1 :(得分:1)

您的应用程序可以连接到云数据库(如SQL Azure)。这不需要任何第三方组件,可以从任何地方/任何设备访问它。

答案 2 :(得分:1)

看看mongoDB,它是一个开源的非关系型数据库,已经获得了普及。它也很快。

答案 3 :(得分:1)

您是否只需要为所有用户提供一个数据库,或者每个用户都拥有自己的数据库?如果它将在服务器端,我更喜欢SQL Server(例如MSSQL,MySQL)。但对于客户端,SQLLite会做这项工作。

答案 4 :(得分:0)

您应该考虑SaaS模型是否相关,换句话说,如果您可以通过在云上托管所有用户的数据库并让客户端通过远程访问它来获益。在您的场景中,如果出现以下情况,我会考虑使用SaaS模型:(1)您的用户需要扩展其个人数据库超出其本地计算机的容量,(2)需要在不同用户的数据库之间共享数据 - 或者可能这可以实现您当前系统中没有的良好功能,或者(3)用户发现必须在本地计算机上运行数据库,因为它耗尽了资源,需要正常运行时间,备份等。如果其中任何一个有时都是正确的,那么通过某种多租户安排托管云上的所有数据库可能是一个很好的解决方案,并且会使您的应用程序尽可能轻量级,因为您根本不需要包含数据库。