SQL SERVER2005遇到的问题:无法将类型为“System.__ComObject”的 COM 对象强制转换为接口类型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL SERVER2005遇到的问题:无法将类型为“System.__ComObject”的 COM 对象强制转换为接口类型相关的知识,希望对你有一定的参考价值。

“Microsoft.VisualStudio.OLE.Interop.IServiceProvider”。此操作失败的原因是对 IID 为“6D5140C1-7436-11CE-8034-00AA006009FA”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 不支持此接口 (异常来自 HRESULT:0x80004002 (E_NOINTERFACE))。 (Microsoft.VisualStudio.OLE.Interop)

参考技术A 你这个是类型转换的问题,因为ACCESS数据库接口与你获取的信息的类型不是对应的,但是接口是继承于System.__ComObject的,所以在类型出错的时候就会出现System.__ComObject错误提示。你这个是编写asp.net(vb)的,干嘛没事找事用asp中的recordset来获取信息啊,asp.net中自带相关oledb组件的。

命名管道提供程序无法打开与 SQL Server 1231 的连接

【中文标题】命名管道提供程序无法打开与 SQL Server 1231 的连接【英文标题】:Named pipes provider could not open connection to SQL Server 1231 【发布时间】:2013-08-22 06:49:28 【问题描述】:

我正在尝试设置链接服务器并遇到问题。

在目标服务器上,我已经配置了一个用户,比如说 Q。我已经将源服务器设置为使用 Q 的登录凭据连接,无论哪个用户在源服务器上登录。

但是当我尝试连接时,我得到了错误

“命名管道提供程序:无法打开与 SQL Server 的连接 [1231]。”

我尝试在服务器配置管理器中启用和禁用命名管道,但无济于事。

我也看到一些事情说这是一个安全问题。问题是,我可以使用 SQL 管理工作室中的 Q 凭据从目标连接到源。

我在这里错过了什么愚蠢的东西吗?

【问题讨论】:

【参考方案1】: 链接服务器上的防火墙是否开启? 检查防火墙是否阻塞了named pipes端口,通常是445 尝试通过端口 445 远程登录到链接服务器

【讨论】:

问题出在源服务器本地,因为我们能够从另一台服务器进行连接。目前它看起来更像是连接/路由问题/防火墙问题。我接受这个答案,因为它最接近我认为的解决方案。感谢您的帮助!【参考方案2】:

打开服务器对象\链接服务器,然后打开链接服务器上的属性。您在此处输入了什么 - 也许您正在将一些现有凭据映射到目标凭据?

您应该只选中“使用此安全上下文”选项,然后输入 Q 并登录。另外,检查“服务器类型”以匹配目标(Sql server)

附带说明,如果错误是由于不支持命名管道,我想你会得到一个不同的错误,比如“错误 28 服务器不支持请求的协议”..

【讨论】:

以上是关于SQL SERVER2005遇到的问题:无法将类型为“System.__ComObject”的 COM 对象强制转换为接口类型的主要内容,如果未能解决你的问题,请参考以下文章

将 VWD Express 2008 连接到 SQL Server Express 2005 时出现问题

尝试将 XML 内容存储到 SQL Server 2005 中失败(编码问题)

SQL Server 2005 事务复制无法发布包含索引创建的存储过程

我在安装Microsoft Sql server2005时遇到了问题,如下

将现有 SQL Server 2005 数据库中的数据类型 varchar 更改为 nvarchar。有啥问题吗?

将 char 数据类型转换为 datetime 数据类型导致 SQL Server 2005 中的 datetime 值超出范围