0

我在一家公司工作,我需要非常快速地创建一个程序。我的程序将与 100 个用户一起运行,他们每天将进行大约 100 笔交易。由于我面临时间压力和其他各种限制,因此无法在服务器上建立一个合适的数据库。因此,我正在寻找具有某种事务支持而不在服务器上运行的替代方案。我相信这可以使用 Microsoft Access 解决,这是一个不错的解决方案,但我相信我会遇到锁定问题。是不是一旦一个用户尝试读取整个表就会被锁定?无论如何...我的问题是还有什么其他选择。

4

7 回答 7

2

真正的答案可能会因这里讨论的数据量而有很大差异。

我会看看SQLite。它支持事务、触发器等,并受到NHibernate 之类的支持,这可能会使您的数据库映射生活更加轻松。

于 2009-12-03T14:37:50.317 回答
1

sqlite 是一个合适的解决方案吗?不过,不确定如何支持远程存储。这不是一个共同的特点。

于 2009-12-03T14:30:32.747 回答
1

查看SQLite

于 2009-12-03T14:30:35.070 回答
1

您可以查看SQL CE,它是 Microsoft 的一个非常好的本地数据库。

于 2009-12-03T14:34:23.077 回答
1

有很多选择。正如其他人所说,使用 SQLLite、SQL Server Express 或许多其他小型、轻量级和免费数据库中的任何一个进行设置和运行。

假设你今天需要这个,我会选择你最了解的那个。此外,我会远离任何类似 Access 的东西。如果您还没有将它用于多用户访问的经验,那么您将花费太多时间来解决问题。

也就是说,我首先倾向于 SQL Server express。它是免费的,无需更改代码即可扩展到完整的 sql server。

于 2009-12-03T14:43:15.990 回答
1

我相信这可以使用 Microsoft Access 解决,这是一个不错的解决方案,但我相信我会遇到锁定问题。

我会说锁定和排队将是您最不担心的事情。如果有 100 个并发用户,Access 可能会在几分钟内自行损坏。每天有 10k+ 条记录,它可能会在一个月左右的时间内使您的整个网络陷入瘫痪。

由于我面临时间压力和其他各种限制,因此无法在服务器上建立一个合适的数据库。

您可以在一个小时内启动数据库服务器。比您花在 Access 上的时间要少得多。有开源虚拟机映像、MSSQL Express、托管解决方案等。时间和成本应该不是问题。

我能想到的唯一能让您使用 Access 的就是表单支持(可以连接到 MSSQL Server)或 DBA 维护。不过,坦率地说,在 100 个用户时,Access 将承担如此多的保姆,以至于您可以负担得起托管 SQL 实例并且仍然领先。

于 2009-12-03T14:44:34.800 回答
1

我认为Firebird可以是一个很好的选择。Firebird 是嵌入式的,也可以与服务器一起使用。它有很多特点。

于 2009-12-03T19:11:09.670 回答