vb.net多个系统的DB连接字符串

时间:2014-06-20 19:35:09

标签: sql database vb.net

我正在使用sql server创建一个vb项目,该项目已在vb中提供,与express editions的界面相同。

我想创建一个项目,我希望允许用户添加|更新|删除|搜索数据库! 主要的问题是根据项目所需的最重要的功能是我想发布我的项目(我知道要发布),但问题是在不同的pc路径中会有不同的数据库。

我如何使用App.config和其他东西,以便我的桌面应用程序自动检测应用程序的新路径?

请给我一个例子。

我试过'不'不。事情,但它只适用于select语句,但当我插入任何数据时,它显示我没有错误,但数据库@back不会改变..!

我的问题一定是重复的!请原谅我,因为我无法从我在这个网站上看到的几乎所有内容中获得解决方案!

在app.config中:

<connectionStrings>
  <add name="SQLConnStr"
       connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\balancesheet.mdf;Integra‌​ted Security=SSPI;Persist Security Info=True;"
       providerName="System.Data.SqlClient" />
</connectionStrings>

在表单页面中:

Dim ConnectionString As String = ConfigurationManager.ConnectionStrings("SQLConnStr").ConnectionString()
Dim SqlConnection As New SqlConnection(ConnectionString)

select语句有效...插入甚至不在同一系统中。

1 个答案:

答案 0 :(得分:0)

您应该将.exe文件和数据库放在同一文件夹中。这样,路径可以设置为:

Server=.\SQLExpress;AttachDbFilename=MyDataFile.mdf;Database=dbname;
Trusted_Connection=Yes;

因此,它不会查找用户路径,例如c:\ Users \ etc \ etc

连接字符串也可以在app.config文件中加密。您还可以将其引用到专用数据库服务器,您可以在其中存储所有用户的所有数据。 app.config文件中的连接字符串为:

Server=myServerAddress;Database=myDataBase;User Id=myUsername;
Password=myPassword;

对于您的情况,我相信SQL Server Compact Edition是更好的选择。您应该在项目的Debug或Release文件夹中创建数据库。设置数据库引用,并排除任何相对路径,因此它应该只是&#34; yourdatabase.sdf&#34;如果您计划发送项目,则只在文件夹中包含.exe文件和.sdf文件。观看此视频以获取更多帮助:https://www.youtube.com/watch?v=aLWi-McMVWA