只是想找出我的连接字符串的正确语法。在有人要求之前,是的,我确实看过其他的答案,而且他们没有为我工作。在这里,我通过查看其他SO问题(例如我要问的那个)来做了几次尝试
Server=(local);Database=SalesOrdersExample;Integrated Security= true
Data Source=(local);Database=SalesOrdersExample;Integrated Security=SSPI
Server=.\\SQLEXPRESS;Database=SalesOrdersExampleDataSet;Integrated Security=true
它们都没有工作(我有一个Console.WriteLine("test");
在那里工作直到我尝试conn.Open()
(打开与数据库的连接)所以我假设它必须是我的连接字符串因为在conn.Open()
)
Console.WriteLine("test"); // works
SqlConnection conn = new SqlConnection("Server=.\\SQLEXPRESS;Database=SalesOrdersExampleDataSet;Integrated Security=true");
Console.WriteLine("test"); // works
conn.Open();
Console.WriteLine("test"); // does not work
因此,有关数据库的一些信息是我的服务器资源管理器中的“数据连接”下的本地信息。我的项目中也有.xsd文件,所以我将数据集链接到我当前的项目。这是一个图片表示,以确认我有数据连接和数据集。
编辑:所以我不允许发布图片,直到我有10个代表,所以这里是直接链接到图片:感谢您的任何帮助。
答案 0 :(得分:0)
Visual Studio附带了LocalDB数据库,它不完全是SQL Server Express数据库。
尝试这样的事情:
Server=(localdb)\v11.0;Integrated Security=true;
或
Data Source=(LocalDB)\v11.0; AttachDbFileName=|DataDirectory|\DatabaseFileName.mdf; InitialCatalog=DatabaseName;Integrated Security=True;MultipleActiveResultSets=True
如果在c#代码中使用,可以使用@来避免反斜杠字符出现问题:
SqlConnection conn =
new SqlConnection(@"Server=(localdb)\v11.0;Integrated Security=true;");