我一直在做一些研究,试图弄清楚哪种数据库系统最能满足我的需求,但我需要一些指导。我正在写一个跟踪库存的VB.Net program
,供小企业使用。我将使用客户端服务器类型模型,网络上的一台计算机充当服务器,其余客户端。客户端计算机的平均数量可能是2-5左右。最多的是10-15。现在我正在使用存储在网络硬盘上的Access数据库,但这种方式较慢且不太稳定。 Access是我学习如何编程的第一个DB,所以我现在正在使用它,但我知道我需要改变它。
要求:
我希望安装过程简单明了,因为这些企业没有IT部门。数据库服务器需要与程序安装一起安装。
项目和客户将不断添加,因此数据库大小限制对我有点担忧,因为我不希望以后在数据库大小最大化时出现问题。
以下是我收集的以下数据库类型:
访问权限:我现在使用的是什么。基于文件的db。不适合使用1个DB的多个用户。
MySQL:开源,但似乎与程序一起分发需要许可,所以这样做了。我希望这是一个选择,但我需要自由。
SQL Server EXPRESS 2005/2008 :没有许可,2008 R2也有10GB的限制。我现在倾向于此。似乎是最容易与VB.Net和& amp;视觉工作室。 Visual Studio(适用于SQL Server 2005)中提供了先决条件,因此将在程序安装期间安装SQL Server。
SQL Server CE:基于文件的数据库。也许不是客户端/服务器设置的最佳选择?可能没有比我现在使用Access更好的方法。如果我错了,请纠正我。
Firebird:我看到其他程序在客户端/服务器类型设置中使用它,但它看起来像基于文件的数据库?看起来对vb.net + firebird的支持很少,这让我很害怕。没有限制,这将是非常棒的。
我做了很多研究,但我仍然不知道哪种情况最适合我的情况。
答案 0 :(得分:2)
我认为你采取的方法是错误的。您要求客户在没有IT部门时安装RDBMS系统和软件。谁会维持这个?
如果这是我,我会提出一个托管模型Web应用程序,可能使用Windows Azure,您可以为所有客户端创建一个集中式数据库(创建多租户数据库),Microsoft处理所有基础架构麻烦。或者使用支持SQL Server 2012的第三方托管解决方案(为什么要考虑2005年或2008年?)。 IMO要么比你提议的更好。而且我相信在这种类型的设置中维护和服务所有客户会相当容易。