将VB.net连接到SQL Server Express mdf
我对MS Access非常有经验,但我正尝试转换到VB.net和SQL Server。我正在尝试构建一个多用户数据库。该mdf文件将在局域网上的某台计算机上,并且每台连接的计算机都有该应用程序。我需要一种方法让最终用户选择mdf文件的路径,因此只使用一个mdf文件。我有一个工作方法,但我想确保我在正确的轨道上。当一个窗体加载,我有这个:将VB.net连接到SQL Server Express mdf
My.Settings("mslConnectionString") = "Server=(localdb)\v11.0;Integrated Security=true;AttachDbFileName=E:\Documents\Visual Studio 2013\Projects\WindowsApplication3\WindowsApplication3\msl.mdf;"
这是一个适当的方式链接到后端mdf文件?我想要做的是制作一个表单,最终用户可以导航到正确的网络路径,然后我想我会将该路径存储在文本文档中。当表单被打开时,它会首先查看文本文档并在运行时更改路径。提前致谢。
你有什么是“LocalDB”连接字符串。 LocalDB是一个轻量级的SQL服务器实现,可以直接连接到一个mdf文件。它通常用于一次附加一个“客户端”。您无法像使用Access一样直接从多个应用程序共享同一个.mdf文件。
如果你想用SQL做类似的事情,你需要安装SQL Server。 SQL Server将附加到.mdf文件,并允许多个连接的客户端同时使用它。
SQL Server的完整版本非常昂贵,但是有一个免费的“Lite”版本,有一些限制,称为SqlExpress。
也可以像建立一个完整的sql服务器一样托管数据库文件来设置LocalDB,但这需要更多的工作和复杂性。如果您想了解更多关于此的信息,请查看MSDN,特别是关于“命名实例”的部分。
好的,我明白了。有没有简单的方法简化SQL Server Express的安装并承载mdf文件?还是需要一个合格的管理员来完成?我只是在考虑如何在大多数人不是那些技术高超的人时才能实现这一目标。 – devhl
您将其安装在一台与服务器类似的计算机上。然后其他计算机使用不同的连接字符串连接到* that *计算机。一旦我回家,我可以给你更多的信息。 –
每个客户端机器的连接字符串看起来像'Server = myServerAddress; Database = myDataBase; User Id = myUsername; Password = myPassword;'。 'Server'是充当服务器的计算机的主机名的IP地址。 'Database'是在SQL Server中注册的数据库名称。用户名和密码是在SQL Server中设置的用户帐户。 –
您需要将MDF附加到“LAN上的计算机”上的SQL Server实例(Express可能适合您)以创建多用户应用程序。 –
因此,它不像运行Access后端?好的,如果托管数据的机器运行SQL Server Express,我会以某种方式在服务器上“托管”文件。如果这是正确的,我的连接字符串将如何改变?我会只使用mdf文件的完整路径,还是其他的? – devhl
您不指向该文件。您指向SQL Server的实例。就像这样:“Server = my_server; Database = name_of_db; User Id = user_name; Password = my_password” – Bugs