【问题标题】:SQL Server connection stringSQL Server 连接字符串
【发布时间】:2011-01-27 17:38:11
【问题描述】:

我猜你会收到数百个这样的问题,但这里是:

所以我试图让 Honeywell Dolphin 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 中没有正确完成?

提前致谢。

顺便说一句,这个网站很棒,这里有一些知识渊博的人。

【问题讨论】:

  • 你确定sql server的实例有默认名称吗?
  • 另外,您确定可以使用与此远程数据库的可信连接吗?可能需要设置用户/密码
  • 我怎样才能检查这些东西?我尝试设置用户名和密码并在连接字符串中指定它们,但运气不好

标签: c# sql-server mobile compact-framework connection-string


【解决方案1】:

CE 5.0 不支持集成安全性。我相信第一个支持它的版本是移动 6.1。在任何情况下,您都不能在您的配置中使用 SSPI。您必须创建一个 SQL Server 用户并将其用作您的连接凭据。

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

为了将来参考,将这个方便的 URL 提交到内存中:http://connectionstrings.com

编辑

让我们看看类似... if Named SQL Server instance:

@"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;";  

【讨论】:

  • 目前它是通过USB连接的,但是开发机器和设备也都连接到同一个无线路由器上。刚刚尝试使用UID & PW,还是同样的sqlexception错误。
  • 错误信息是什么?并确保您可以从您的设备 ping 服务器。 USB 桥接器可能很奇怪。您是否尝试过连接字符串中的 IP 地址?
  • gah 只是尝试从设备 ping 通,没有运气。猜猜这是一个网络问题,而不是我的狡猾编程!
  • 好的,我现在可以 ping 通了(以前 McAfee 会妨碍我),但连接到 SQLS 仍然没有乐趣
  • 如果它是一个命名实例,让我们看看一个更新的连接字符串,它带有 IP 地址而不是机器名称和 SQL Server 实例名称。请参阅答案中的编辑。
猜你喜欢
  • 2017-05-11
  • 1970-01-01
  • 2013-01-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多