【问题标题】:Linq to SQL Connection String for Sql Auth用于 Sql Auth 的 Linq to SQL 连接字符串
【发布时间】:2013-04-17 06:53:10
【问题描述】:

我正在使用启用了 Windows 身份验证的 Sql Server。最近我添加了一个下拉列表以允许不同的连接。其中之一使用 SQL 身份验证。

我咨询了 msdn,看来我需要做的就是在我的字符串中添加一个用户名和密码条目。

http://msdn.microsoft.com/en-us/library/aa905872(v=sql.80).aspx

我的 Windows 身份验证字符串:

Data Source=PC\Slike;Initial Catalog=db_slike_articles;Integrated Security=True

我为 SQL 身份验证添加的第二个字符串:

Data Source=Data Source=PC\Dev;Initial Catalog=db_dev_articles;Integrated Security=True;User ID=root;Password=rootpwd

由于某种原因,当我选择第二个 SQL 连接时,它会抛出一个 SqlException,即使用我的 PC\Slike 用户名登录失败。连接字符串是第二个带有用户 ID 和密码的字符串,我不明白它为什么要尝试连接我的本地帐户。

第二个字符串位于远程计算机上,是否需要启用某些功能才能从 Windows Auth 切换到 Sql Auth,或者在字符串中指定凭据是否足够?

谢谢

【问题讨论】:

  • SQL 身份验证连接字符串中仍有Integrated Security=True,因此可能仍将使用 Windows 身份验证。您也许应该将其删除以查看是否会改变
  • 是的,解决了我的问题。

标签: c# linq-to-sql connection-string


【解决方案1】:

使用 SQL 身份验证时,将其从连接字符串中删除:

Integrated Security=True;

有一个网站列出了所有数据库引擎的所有可能/支持的连接字符串语法,我现在找不到它,connectionstrings.com 无法正确加载。

【讨论】:

  • 你完全正确,我刚刚看到使用 Integrated Security 关键字,设置为 SSPI 的值,在我链接的页面中指定 Windows 身份验证(推荐)。我想是时候收工了。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多