我是SQL数据库C#项目的新手,我在Windows窗体应用程序中连接到我的数据库时遇到问题,这是一个单用户应用程序,我想只为自己使用它。我在Windows 7 64位上使用Visual Studio 2012并在我的DELL Inspiron15 3521笔记本电脑上安装了SQL Server 2008和2012(太多信息?对不起,我非常绝望)。 首先,我不知道我的连接字符串是否正确或是否正确。这是我的连接字符串:
con.ConnectionString = "Data Source=(local); Initial Catalog=Library;Integrated Security=True";
所以请帮助我纠正它,另一个问题是当这个代码在Visual Studio 2012中运行时,它告诉我"无法打开数据库" Library"登录请求。登录失败。"当我在SQL服务器中的身份验证是Windows身份验证并且我没有任何登录信息添加到数据库时,就会发生这种情况。是否有任何配置或它只是我的代码错了?
先谢谢
答案 0 :(得分:3)
您的连接字符串应如下所示:
<connectionStrings>
<add name="ConnStringDb1"
connectionString="Data Source=localhost\SQLSERVER;Initial Catalog=Library;Integrated Security=True;"
providerName="System.Data.SqlClient" />
</connectionStrings>
答案 1 :(得分:0)
如果您正在寻找使用随VS安装的测试/本地数据库,那么您正在寻找(localdb)\\mssqllocaldb
那么连接字符串就是:
Data Source=(localdb)\\mssqllocaldb; Initial Catalog=Library;Integrated Security=True
您可以将其存储在app.config
中,就像其他答案一样,否则可能取决于您使用的内容。
Initial Catalog
正在谈论将要创建/使用的数据库的名称
Integrated Security
表示它将使用当前的Windows用户
为了连接到内置的localdb,你需要这两件事。
答案 2 :(得分:0)
感谢大家的所有回复,但我已经在@Corak的答案中找到了答案,答案就在评论中。但这是我应该用于字符串连接的代码的正确形式:
@"Data Source=(LocalDB)\v11.0; AttachDbFileName=|DataDirectory|\Library.mdf; Integrated Security=True";
在我的情况下,|DataDirectory|
是我的计算机中数据库(Library.mdf)的路径,所以如果有人使用此代码而不是|DataDirectory|
写道路就像示例一样,因为如果你使用{ {1}}代码将运行,但数据库中不会发生任何事情(或者至少对我来说它没有工作)。这是一个例子:
|DataDirectory|
我的sqlserver是VS2012本地数据库服务器v11.0,这是我必须在我的代码中专门写的东西。
希望它有用