OLE 自动化返回代码和错误信息

适用于:SQL Server

OLE 自动化系统存储过程返回一个 int 返回代码,该代码是基础 OLE 自动化操作返回的 HRESULT。 HRESULT 为 0 表示成功。 非零的 HRESULT 是 OLE 错误代码,其形式为十六进制 0x800nnnnn,但是当作为存储过程返回代码中的一个 int 值返回时,HRESULT 的形式为 -214nnnnnnn。

示例

例如,向 sp_OACreate 传递一个无效的对象名 (SQLDMO.Xyzzy) 会导致该过程返回一个值为 2147221005 的 int HRESULT,该值用十六进制表示则为 0x800401f3。

可以使用 CONVERT(binary(4), @hresult)int HRESULT 转换为 binary 值。

有关支持的转换的示例,请参阅 H. 将 CONVERT 与二进制和字符数据结合使用

后续步骤