SQL Server Express 2008 R2的数据库连接
本文关键字:数据库连接 R2 2008 Server Express SQL | 更新日期: 2023-09-27 17:50:47
我正在制作一个在Windows 7 64位上使用SQL Server 2008 R2 Express的c#应用程序。我面临的问题是我不能连接到我的数据库,因为我的连接字符串是错误的。我使用。udl文件来创建连接字符串,这是它给我的:
Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Restorant;
DataSource=.'SQLEXPRESS
此连接字符串正在创建一个错误,指出存在无法识别的转义值。我试图将我的数据源更改为(本地),因为我的朋友说它适用于他们的项目,但由于未知的实例名称错误,我无法连接。
还有其他方法可以连接到我的数据库吗?
在c#中字符'
被认为是转义序列中的第一个字符。
因为Data Source=.'SQLEXPRESS
的'S
不能被识别为有效的转义序列,所以会出现错误。
因此,您需要构建连接字符串,并以字符@
或转义字符''
作为前缀有关@字符
string conString = @"Integrated Security=SSPI;Persist Security Info=False;" +
@"Initial Catalog=Restorant;Data Source=.'SQLEXPRESS";
如果有必要的话,请记住使用此方法逐字创建多个字符串。
还要注意连接字符串的数据源部分中的小错误。它需要在数据和源之间留出一个空间。见connectionstrings.com
现在您的连接字符串正试图逃离S
,例如.'S
。改成
//double the backslash to escape the slash
string connectionString = "Integrated Security=SSPI;Persist Security Info=False;
Initial Catalog=Restorant; Data Source=.''SQLEXPRESS";
或
//precede the string with @
string connectionString = @"Integrated Security=SSPI;Persist Security Info=False;
Initial Catalog=Restorant; Data Source=.'SQLEXPRESS";
尝试将数据源名称更改为数据源Data Source=localhost'SQLExpress