我一直在使用一些LocalDB数据库(.mdf文件)。我曾经是唯一一个使用这些数据库的人,但现在越来越多地使用它。每次我们同时使用应用程序时都会出现错误,因为我们同时连接到数据库。
有没有办法允许同时连接到SQL LocalDB数据库? 如果不是最好的选择,假设我们永远不会有超过5人同时连接?
以下代码我正在诉诸我的数据库文件:
Public Shared Function SQLQuery(query As String, connectionString As String, tableName As String)
Dim cn As New SqlConnection(connectionString)
Dim cm As New SqlCommand(query, cn)
Dim adp As New SqlDataAdapter(cm)
Dim ds As New DataSet
adp.Fill(ds, tableName)
adp.Dispose()
cm.Dispose()
cn.Close()
SQLQuery = ds
End Function
以下是连接字符串的示例:
Public Shared connectionStringScreenDataDB As String = "Data Source=(LocalDB)\v11.0;AttachDbFilename='P:\Clement\Visual Studio\PanoramaFund2App\PanoramaFund2App\ScreenDataDB.mdf';Integrated Security=True"
答案 0 :(得分:1)
LocalDB允许无限制(本地)并发连接;见SQL Express v LocalDB v SQL Compact Edition
您的连接字符串似乎指向共享驱动器。 LocalDB不接受远程连接。共享网络文件夹的想法可能有效(我怀疑它);请记住,只有一个LocalDB实例可以同时打开任何给定的数据库文件(和日志文件)。
替代方案:Simplified说,LocalDB的目的是在一台机器上本地用于一个应用程序。如果需要远程访问,可以使用SQL Server(不是Express版本)或任何其他数据库。
答案 1 :(得分:0)
我可能有另一种想法。由于该文件是本地文件,并且多个用户正在访问它。您可以随时在线托管数据库,然后以这种方式链接到数据库。然后,它将允许对数据库的所有编辑都是即时的。