gpt4 book ai didi

c# - 将已安装的 C# 应用程序连接到本地 SQL Server 2005 Express - 用户未与受信任的 sql 连接相关联

转载 作者:太空宇宙 更新时间:2023-11-03 14:01:10 25 4
gpt4 key购买 nike

(我知道网上有很多这样的问题,我已经花了几天时间试图解决这个问题,但我什么也没有得到。我是新手,所以请多多包涵)

<强>1。问题

在我的 friend 计算机 (Vista Home Premium) 上安装我的应用程序 SQL Server 2005 Express 并将数据库(mdf 文件)附加到新的 SQL Server 之后,每当我启动我的应用程序或在其中打开一个新窗体(C# windows 窗体)时我收到以下消息的应用程序:

System.Data.SqlClient.SqlException: Login failed for user ''. The user is not associated with a trusted SQL Server connection.

如果我单击“继续”,我可以读取/写入数据库,并且应用程序按预期工作(直到我打开一个新表单并再次收到相同的消息)。

<强>2。所以这就是我到目前为止所做的:

我已经打开了“SQL Server 和 Windows 身份验证模式”,因为我看到很多线程都建议这样做,但它没有帮助。

我当前的连接字符串:

"Data Source=.\SQLEXPRESS;Initial Catalog=pj;Integrated Security=SSPI;"

由于我的连接字符串包含“.\SQLEXPRESS”,它将尝试连接“计算机名\用户名”,在我的例子中是“TONY-COMPUTER\TONY”,所以我添加了一个具有该名称的 SQL 用户和角色成员资格 db_datareader 和 db_datawriter 能够读取/写入数据库。

我也试过像这样的连接字符串:

"Data Source=.\SQLEXPRESS;Initial Catalog=pj;User Id=Tony;Password=123;"

然后添加 SQL 用户“Tony”。

但我一直收到同样的错误。令我困惑的是,错误消息中没有用户名,我希望看到“TONY-COMPUTER\TONY”或“Tony”,但它是空白的。

非常感谢任何帮助!

/托尼

最佳答案

如果您收到 Sql 身份验证错误,但您的程序仍然能够访问您的数据库,那么这表明您正在尝试以两种不同的方式访问数据库。

你确定你没有一些不必要的代码试图访问数据库可能使用一些硬编码的连接字符串吗?

如果您使用 Visual Studio 设计器定义了一个连接,则有时会发生这种情况,该连接的设置可能存储在 designer.cs 文件中,但随后可以使用适当的连接字符串在运行时覆盖。在您的开发机器上,硬编码的连接字符串可能有效,因此不会被注意到。

这也可以解释为什么错误与实际连接字符串没有任何关系。

关于c# - 将已安装的 C# 应用程序连接到本地 SQL Server 2005 Express - 用户未与受信任的 sql 连接相关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10683954/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com