SQL Server 防注入参数化之 Where in

程序中执行SQL时,可以使用参数化防注入,如:

但是where id形式不可以直接使用参数化:

将逗号分隔的字符串转换为参数table,再使用参数化调用,如:
 where in 字符串:
字符串转换参数(string类型)table函数如下:

 字符串转换参数(int类型)table函数如下:

MSSQL调用企业微信接口完整代码

  1. 搭建环境 ,掉坑的请看这里:SQL SERVER调用WebServer的两个异常问题
  2. 调用WebService的存储过程 P_Url_SendRequest ,里面有一个坑,修正后的代码请看这里:MSSQL访问WebServer接口代码 – P_Url_SendRequest
  3. JSON 解析函数 parseJSON ,里面又有一个坑,修正后的代码请看这里:MSSQL JSON函数-parseJSON
  4. 获取企业微信Access_Token-P_Get_Access_Token 封装
  5. 调用企业微信发送消息接口封装-P_Send_TextMsg 封装

继续阅读“MSSQL调用企业微信接口完整代码”

SQL SERVER调用WebServer的三个诡异问题

  1. sp_OAMethod @Object, ‘send’, NULL, @PostData
    错误提示: msxml3.dll 证书作者无效或不正确原因:https站点证书不被信任。使用IE打开URL时提示不安全。例如国内的12306等网站。解决方法:在服务器在IE上打开该站点URL,安装证书即可。
  2. sp_OAMethod @Object, ‘open’, NULL, post, @ServiceUrl,’false’
    返回错误
    解决方法:参数”POST”须大写。
  3. SQL账户无执行sp_OACreate权限
    解决方法:
    A)提升SQL账户权限为sysadmin –不推荐
    B)添加SQL账户的master数据库最低权限
    在master数据库下执行:GRANT EXECUTE ON sys.sp_OACreate TO [username]