• sqlserver使用OpenQuery或OPENROWSET遇到的问题


    OpenQuery,OPENROWSET允许用户在链接服务器上查询.通过这种方法来得到查询的结果集.   
      1.在创建存储过程中,必须设置   
            SET   ANSI_NULLS   ON   
            SET   ANSI_WARNINGS   ON   
            (在查询分析器中执行,将默认激活这些设置)   
      2.定义链接服务器(必须有sysadmin权限)   
      3.这个时候就可以使用   
      SELECT   *   FROM   OPENQUERY(linkSERVER,   'EXEC  MyStoreProc')     
      来得到存储过程返回的结果集.   
      但是存储过程MyStoreProc不能访问临时表,   
      如果使用了临时表,必须如下调用   
            SELECT   *   FROM   OPENQUERY(linkSERVER,'SET   FMTONLY   OFF ; EXEC   MyStoreProc')   
          通常来说,OPENQUERY只是作为一个快捷的远程数据库访问,它必须跟在select后面,也就是说需要返回一个recordset.   
      而加上set   fmtonly   off用来屏蔽默认的只返回列信息的设置之后,这样返回的output集合就会提交给前面的select显示。   
      如果采用默认设置,会返回空集合导致select出错,命令也就无法执行了

  • 相关阅读:
    Docker
    Web
    爬虫
    Python
    软件脱壳
    网络抓包
    HTTPS单向认证,双向认证
    新版无完整背景图片滑块验证码
    Frida Hook
    闭包函数与装饰器
  • 原文地址:https://www.cnblogs.com/firtree/p/4126355.html
Copyright © 2020-2023  润新知