经典 ASP - 使用 Windows 身份验证的 SQL Server 2008 连接字符串
Posted
技术标签:
【中文标题】经典 ASP - 使用 Windows 身份验证的 SQL Server 2008 连接字符串【英文标题】:Classic ASP - SQL Server 2008 Connection String using Windows Authentication 【发布时间】:2010-11-24 11:31:01 【问题描述】:这应该非常简单,但我无法为使用 Windows 身份验证的 SQL Server 2008 的本地副本提供有效的连接字符串。我尝试使用数据链接属性工具创建连接字符串,并且连接没有问题,但是当我将生成的字符串复制粘贴到我的 ADODB.Connection 对象的 ConnectionString 属性中时,我得到了各种有趣和不同的错误。
Set conn = Server.CreateObject("ADODB.Connection")
conn.ConnectionString = "SQLNCLI10.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=climb4acure;Data Source=(local);"
Microsoft OLE DB Service Components (0x80040E21)
Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.
我尝试了多种类似的连接字符串,但我找不到可以与 Windows 身份验证一起使用的连接字符串。有人能指出我正确的方向吗?
谢谢!
【问题讨论】:
【参考方案1】:这是一种生成有效连接字符串的简单方法。
右键单击桌面上的空白处,然后从上下文菜单中选择新建、文本文档
使用 .udl 扩展名保存,并在询问您确定时单击是。
双击刚刚创建的新 udl 文件。它将打开一个对话。转到提供程序选项卡,然后选择适当的提供程序。
进入Connection选项卡,填写服务器名和数据库名,选择NT认证(或者使用特定的用户名和密码,即SQL认证)。现在单击测试连接。如果可行,您就可以单击“确定”并继续进行最后一步。如果不需要,您需要解决权限问题,或者您输入了错误的内容。
现在右键单击桌面上的文件并在记事本中打开它。它将显示连接字符串,您可以将其复制并粘贴到您需要的任何位置。
【讨论】:
我认为这可能是我见过的最有帮助的帖子。 太棒了!然后我不得不手动将我的密码添加到生成的连接字符串中(使用 Password=xxxxx)。【参考方案2】:我假设您安装了 2008 Native Client?另外,我注意到您在开头缺少“提供者”标签 - 您是否还有运气:
Provider=SQLNCLI10.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=climb4acure;Data Source=(local);
【讨论】:
【参考方案3】:你看过connectionstrings.com吗?它们是一个很好的参考(但根据我的经验,它们在 Google Chrome 浏览器中效果不佳)。
【讨论】:
是的,我在那里花了一些时间尝试各种建议的连接字符串,但它们似乎都不能正常工作。 不过,我很高兴你找到了答案。【参考方案4】:工作得很好:
“提供者=SQLNCLI;服务器=xxxxxxxx;uid=sa;pwd=xxxxxx;数据库=xxxxxx;”
【讨论】:
以上是关于经典 ASP - 使用 Windows 身份验证的 SQL Server 2008 连接字符串的主要内容,如果未能解决你的问题,请参考以下文章
向经典 ASP.NET Web 窗体应用和 Web API 应用添加共享身份验证
java模拟使用windows身份验证连接到sql server