2011-01-27 289 views
4

我猜你会得到数以百计的这些问题,但在这里有云:SQL Server连接字符串

所以我试图让霍尼韦尔海豚6100移动设备(CE5.0,.NET Compact Framework的)到与我正在开发的计算机上安装的SQL Server Express 2008数据库交谈。

我是一个完整的新手到SQL Server和移动开发,并且现在仍然在C#中的小绿(是的,我知道,一跃在这里深结,嗯?d)

到目前为止,我有:

string sConnection = @"Data Source=JEZ-LAPTOP;DataBase=EMS_Main;Integrated Security=SSPI;"; 
SqlConnection sqc = new SqlConnection(sConnection); 
sqc.Open(); 

该应用程序非常高兴地部署到6100,但最后一行错误与一个模糊的“SQL异常”错误。

我曾尝试更改数据源以包含实例名称,斜线和点之前等等等等(即使服务器只是使用默认实例),无济于事。

我可以连接到Management Studio中的数据库,没有任何问题。

那么,连接字符串是否有问题,或者是我在SQL Server中没有正确完成的事情?

在此先感谢。

这个网站真棒btw,一些非常knowledgable家伙在这里。

+1

你确定sql server的实例有默认名字吗? – ykatchou 2011-01-27 17:40:31

+0

也,你确定你可以使用一个可信的连接到这个远程数据库?可能必须设置用户/密码 – BrokenGlass 2011-01-27 17:41:59

回答

3

CE 5.0不支持集成安全性。我相信支持它的第一个版本是mobile 6.1。无论如何,您不能在您的配置中使用SSPI。您必须创建一个SQL Server用户并将其用作连接凭证。

除了使用UID/PWD进行连接之外,尝试的另一件事是通过IP来引用服务器。您的设备上的DNS解析可能无法正常进行。嗯,这是一个完整的问题。您的设备与SQL Server在同一网络上吗?

而且以供将来参考,提交这个方便的网址记忆:http://connectionstrings.com

编辑

让我们看到这样的......如果命名SQL Server实例:

@"Data Source=192.168.0.56\SERVER_NAME;DataBase=EMS_Main;User Id=joe;Password=pwd;"; 

如果不是名为SQL Server实例:

@"Data Source=192.168.0.56;DataBase=EMS_Main;User Id=joe;Password=pwd;";