有关获取SQL执行语句的错误提示的问题

wcqgm 2006-03-28 03:34:28
各位高手,小弟近日准备写一个存储过程,其有三个参数,其一是SQL语句,后两结果类型和是返回错误信息.当传过来的传数(基本是select语句),如果没有语法错误,则返回,如果有则返回状态和具体信息.请问这用什么函数.谢谢
同时我遇到一个问题就是写的存储过程在ASP中的代码如下:
set cmd=server.CreateObject("adodb.command")
set cmd.ActiveConnection=conn   '正常
cmd.CommandText="proc_auto_serial" 
cmd.CommandType=adCmdStoredProc
cmd.Parameters.refresh
cmd("@sType")=2
cmd.Execute()
这个存储在以前的项目中都能运行,但是现在不知为什么总是报错.
提示如下:错误类型:
ADODB.Command (0x800A0BB9)
参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。
/hbsmain/depot/reportmanage_add_modify.asp, 第 10
请问这是为什么?害得我现在写的存储过程全部当SQL语句来执行.
谢谢,问题解决马上给分.
...全文
166 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiandanyu 2006-03-28
  • 打赏
  • 举报
回复
@@Error
jiandanyu 2006-03-28
  • 打赏
  • 举报
回复
你写的是 @sType,后来又说@type
OracleRoob 2006-03-28
  • 打赏
  • 举报
回复
Try:
cmd("@sType")=2
改成
cmd.Parameters(0).Value = 2
OracleRoob 2006-03-28
  • 打赏
  • 举报
回复
参考:
Set cmd = server.CreateObject("adodb.command")
Set cmd.ActiveConnection = conn
cmd.CommandType = adCmdStoredProc
cmd.CommandText = "proc_auto_serial"

PrmIn.Type = adVarChar
PrmIn.Size = 12
PrmIn.Value = "000"
PrmIn.Direction = adParamInput
cmd.Parameters.Append PrmIn

PrmOut.Type = adInteger
PrmOut.Direction = adParamOutput
cmd.Parameters.Append PrmOut

cmd.Execute
huailairen 2006-03-28
  • 打赏
  • 举报
回复
cmd("@sType")=2
改成
cmd.Parameters(0) = 2
试下。
wcqgm 2006-03-28
  • 打赏
  • 举报
回复
@type是tinyint型的.
aiur2000 2006-03-28
  • 打赏
  • 举报
回复
字符型就需要 cmd("@sType")="2"

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧