远程数据访问:用户未与受信任的SQL Server连接关联

时间:2014-04-20 08:21:42

标签: sql sql-server

我已阅读此处的所有相关帖子以及其他论坛上的许多其他讨论,但仍无法解决我的问题。

我将SQL Server CE应用程序从WindowsCE设备移植到Win 7.感兴趣的代码是使用SqlCeRemoteDataAccess.Pull从SQL Server数据库远程下载表。

WinCE设备上的原始代码如下:

SqlCeRemoteDataAccess.Pull(Tablename, sql, _remoteConnectionString, RdaTrackoption.TrackingOffWithIndexes, "ErrorTable")

从Visual Studio 2012在Win7上运行时,它会抱怨:

Attempted to read or write protected memory. This is often an indication that other memory is corrupt.

我仔细检查了我的本地和远程数据库。它们没有被破坏。然后我搜索了互联网和这个论坛,并尝试了建议的解决方案:更改连接字符串:

Provider=PROVIDER;Data Source=Src;User ID=SUser;Password=1234;Initial Catalog=ABCD_EF;

要:

Provider=PROVIDER;Data Source=Src;User ID=SUser;Password=1234;Initial Catalog=ABCD_EF;Integrated Security=SSPI; 

现在我得到了:

  

用户''登录失败。用户未与受信任的SQL Server连接关联。

我还在上面的连接字符串中添加了Trusted_Connection=YesTrusted_Connection=True,并看到了相同的错误。有什么建议 ?谢谢。

注意:服务器已设置为混合模式:Windows和SQL Server身份验证。

新更新:我使用C#对设备和Win7进行编程。远程数据服务器代理位于sqlcesa30.dll(Microsoft SQL Server Compact Edition Server Agent 3.0)中。以下是使用的连接字符串和我收到的错误消息:

(1)在WinCE设备上运行的原始设备,但在Win 7上我得到了:

Provider=PROVIDER;Data Source=Src;User ID=SUser;Password=1234;Initial Catalog=ABCD_EF;

Attempted to read or write protected memory. This is often an indication that other memory is corrupt.

(2)在Win 7上我得到了:

Provider=PROVIDER;Data Source=Src;Initial Catalog=ABCD_EF;Integrated Security=SSPI;

Login failed for user ''. The user is not associated with a trusted SQL Server connection.

(3)在Win 7上我得到了:

Provider=PROVIDER;Data Source=Src;User ID=SUser;Password=1234;Initial Catalog=ABCD_EF;Integrated Security=SSPI;

Login failed for user ''. The user is not associated with a trusted SQL Server connection.

1 个答案:

答案 0 :(得分:0)

您不能一次在连接字符串中 Integrated Security=SSPI; User ID=SUser;Password=1234选择一个

  • 使用集成安全性(推荐)来使用您当前的凭据 - 但是必须从连接字符串中移除 UserID=...;Password=....部分

  • 或者您使用特定的用户和密码 - 在这种情况下,添加集成安全性或可信连接是没有用的,因为将使用UserID=...;Password=...设置

因此,如果您已正确设置集成安全性,请使用:

Data Source=Src;Initial Catalog=ABCD_EF;Integrated Security=SSPI; 

作为您的连接字符串。