ASP中使用存储过程,遭遇"参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突"错误

摘要:
今天,我需要帮助我的同事更改ASP页面。原始页面中有几个SQL查询。我觉得ASP页面冗长且效率低下,所以我将查询放入SQL Server的存储过程中,但我以前从未使用过ASP的存储过程。我在互联网上找到了一个例子,并根据葫芦画了一张图:FunctionGetCameraUrl(Conn,CameraId)constantCmdStoredProc=&H0004constantVarChar=200ConstantChar=129

      今儿需要帮同事改一个ASP的页面,原本里面好几个SQL查询,在ASP页面里我觉得啰嗦,而且效率也低,于是将查询放到SQLServer的存储过程里,但是以前没有使用过ASP的存储过程,在网上找来例子,照葫芦画瓢:

Function GetCameraUrl(Conn,CameraId)

      const   adCmdStoredProc   =  &H0004    
      const   adVarChar   =   200  
      Const   adChar   =   129  
      Const   adInteger   =   3    
      const   adParamUnknown   =   &H0000  
      const   adParamInput   =   &H0001  
      const   adParamOutput=   &H0002  
      const   adParamInputOutput=   &H0002  
      const   adParamReturnValue   =   &H0004  

    Dim url
    Set cmdTest = Server.CreateObject("ADODB.Command")           
    With cmdTest   
        .ActiveConnection = Conn
        .CommandText = "[df1500].[dbo].[sp_GetCameraConnectionInfo]"
        .CommandType = adCmdStoredProc
        '.CommandType = adCmdText
        .Parameters.Append cmdTest.CreateParameter("RETURN", adInteger, adParamReturnValue, 4)
        .Parameters.Append .CreateParameter("@camera_id", adInteger, adParamInput, 4,CameraId)
        .Parameters.Append .CreateParameter("@url", adVarChar, adParamOutput, 1024)
        .Execute
        url = .Parameters("@url").Value
    End With       
    set cmdTest = Nothing
    GetCameraUrl = url

End Function

但是一执行就发现错误:

参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突 错误出现在这一行

        .CommandType = adCmdStoredProc 

 本来很少用ASP,出现这样的提示让人摸不着头脑,我原本以为adCmdStoredProc是内部定义好的东西,网上其他高手说这个东西需要自己定义,哦,明白了。改正后的代码如下:

      const   adCmdStoredProc   =  &H0004    
      const   adVarChar   =   200  
      Const   adChar   =   129  
      Const   adInteger   =   3    
      const   adParamUnknown   =   &H0000  
      const   adParamInput   =   &H0001  
      const   adParamOutput=   &H0002  
      const   adParamInputOutput=   &H0002  
      const   adParamReturnValue   =   &H0004  

  

Function GetCameraUrl(Conn,CameraId)

      const   adCmdStoredProc   =  &H0004    
      const   adVarChar   =   200  
      Const   adChar   =   129  
      Const   adInteger   =   3    
      const   adParamUnknown   =   &H0000  
      const   adParamInput   =   &H0001  
      const   adParamOutput=   &H0002  
      const   adParamInputOutput=   &H0002  
      const   adParamReturnValue   =   &H0004  

    Dim url
    Set cmdTest = Server.CreateObject("ADODB.Command")           
    With cmdTest   
        .ActiveConnection = Conn
        .CommandText = "[df1500].[dbo].[sp_GetCameraConnectionInfo]"
        .CommandType = adCmdStoredProc
        '.CommandType = adCmdText
        .Parameters.Append cmdTest.CreateParameter("RETURN", adInteger, adParamReturnValue, 4)
        .Parameters.Append .CreateParameter("@camera_id", adInteger, adParamInput, 4,CameraId)
        .Parameters.Append .CreateParameter("@url", adVarChar, adParamOutput, 1024)
        .Execute
        url = .Parameters("@url").Value
    End With       
    set cmdTest = Nothing
    GetCameraUrl = url

End Function

免责声明:文章转载自《ASP中使用存储过程,遭遇"参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突"错误》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇使用SC命令时注意事项小心迅雷的浏览器插件下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

ASP.NET在IIS上注册0x800702e4错误解决

网友在本人的QQ群上问这个错误怎么办。以下是问答: 网友:win7 注册iis也就是 aspnet_regiis -i 出现错误。出现了错误 0x800702e4 请求的操作需要提升 本人:是IIS 7? 网友:Win 7 32位 IIS 7 本人:ASP.NET版本? 网友:3.5 本人:是要做什么? 网友:发布网站 本人:何不先百度,Google一下?...

asp.net 可视化操作(一)——asp.net安装与使用

目录 安装创建网页设计网页运行 vs 2019安装asp.net 1、安装 打开vs,选择继续但无需代码 -->工具–>获取工具和功能勾选如下选项后,点击关闭点击更新等待安装完成…… 使用 创建asp.net网页 打开vs,按下图创建asp.net程序填写项目名称,这里我们先使用默认的项目名选择Web窗体,确定右键单击创建...

组合查询

实体类: usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Web; /// <summary> ///goods 的摘要说明 /// </summary> public classgoods { publicgoods(...

mysql 存储过程创建

delimiter //create procedure select_all()beginselect * from t_user;end// call select_all(); #删除存储过程drop procedure select_all; #创建存储过程delimiter //create procedure select_all(user_n...

TagHelper使用

谈谈ASP.NET CORE 中Razor Page 的TagHelper【标签助手】常见类型及其详细使用 David Hongyu 2020-03-15 15:42:39 748 收藏 4 原力计划分类专栏: ASP.NET CORE MVC 文章标签: asp.net版权 ASP.NET CORE MVC专栏收录该内容56 篇文章1 订阅订阅专栏一,Ta...

MySQL基础知识:存储过程

MySQL存储过程(Stored Procedure)主要的知识点: 分隔符(delimiter) 变量(variable) 参数(parameters) 分隔符(DELIMITER) MySQL通过delimiter来区分不同的SQL语句(SQL Statement),默认的分隔符是 ;; 对于procedure,会有多条SQL Statement,且...

最新文章