无法建立与本地SQL数据库的连接

时间:2014-09-06 16:54:54

标签: sql visual-studio-2013 sqlconnection

只是想找出我的连接字符串的正确语法。在有人要求之前,是的,我确实看过其他的答案,而且他们没有为我工作。在这里,我通过查看其他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个代表,所以这里是直接链接到图片:

DB Screenshot

感谢您的任何帮助。

1 个答案:

答案 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;");