我正在使用C#winforms构build一个应用程序。 在后端我使用SQLSERVER 2008 Express。 该应用程序通过瘦客户端进行远程使用。
我的问题是,当一个用户使用我的软件,第二个用户试图打开软件,并试图对数据库进行任何操作时,数据库拒绝连接。 只有当第一个用户closures应用程序时,第二个用户才能操作数据库查询。
自2000年以来,SQLExpress版本可以处理多个并发连接,所以应该可以工作,尽pipe有一些限制,如可用的RAM,正如本答复中所解释的。
是否有机会达到极限,这将导致DB拒绝任何进一步的连接?
您当然必须知道,两个用户不能同时编辑完全相同的表格或者至less是表格部分(取决于具体的操作:读取还是更新)。 因此,如果在表格/logging上打开locking,则第二个用户必须等到删除这些locking以编辑数据库logging。 但是那些锁只能在很短的时间内出现。