用ASP调用带参数的存储过程出现问题。请高手指教!

L_Lei 2005-07-25 11:54:04
小弟第一次使用asp调用存储过程。出现如下问题,请高手指教。
存储过程如下:
CREATE PROCEDURE [dbo].[sjsj1]
@tablename varchar(30)

AS
exec( 'insert into njrb_sjsj1(Fstatus,FServiceID) select Fstatus,FServiceID from [SMS3W].[sharesmyd].[DBO].'+@tablename+ ' where fmsgtype=60')
exec( 'insert into njrb_sjsj2(Fstatus,FServiceID) select Fstatus,FServiceID from [SMS3W].[sharesmyd].[DBO].'+@tablename+ ' where fmsgtype=62')
GO
ASP脚本如下:
set cmd=server.CreateObject("adodb.command")
cmd.ActiveConnection=cnngp
cmd.CommandType=4
cmd.Prepared=true
cmd.CommandText="sjsj1"
tblname="Msgtable"
set prm1=cmd.CreateParameter ("@tablename",adVarChar,1,30,tblname)
cmd.Parameters.append prm1
cmd.Execute
已经包含了adovbs.inc。
运行时提示错误:
Microsoft VBScript 编译器错误 错误 '800a03f6'

缺少 'End'

/iisHelp/common/500-100.asp,行242

Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e14'

[Microsoft][ODBC SQL Server Driver][SQL Server]异类查询要求为连接设置 ANSI_NULLS 和 ANSI_WARNINGS 选项。这将确保一致的查询语义。请启用这些选项,然后重新发出查询。

/test/njrb/login.asp,行100

还有个问题不明白,在set prm1=cmd.CreateParameter ("@tablename",adVarChar,1,30,tblname)
语句中,定义变量名字的时候,这个变量的名字是不是必须是存储过程中的变量的名字。比如,存储过程中的参数名字是@tablename,那么在cmd.CreateParameter 中定义的变量的名字也必须是@tablename
...全文
162 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
L_Lei 2005-07-25
  • 打赏
  • 举报
回复
语法?能不能详细的指正一下,谢谢!
tigerwen01 2005-07-25
  • 打赏
  • 举报
回复
是相同,但你的问题海象是语法问题啊
L_Lei 2005-07-25
  • 打赏
  • 举报
回复
到底有没有高手伸一下援助之手呀?兄弟很急啊!
L_Lei 2005-07-25
  • 打赏
  • 举报
回复
是不是因为在存储过程中使用了链接服务器的原因呢?
L_Lei 2005-07-25
  • 打赏
  • 举报
回复
TO itzhiren(itzhiren) :
在查询分析器里面执行也是报这个错误,怎么回事呢?
itzhiren 2005-07-25
  • 打赏
  • 举报
回复
Microsoft OLEDBProviderforODBCDrivers(0x80040E14)-->sql语句出错(字段名错误,或数据类型不匹配)
itzhiren 2005-07-25
  • 打赏
  • 举报
回复
你在查询分析器里面看看是否能够执行成功?
L_Lei 2005-07-25
  • 打赏
  • 举报
回复
我又换了一种写法:
cnngp.execute("exec sjsj1 'Msgtable"&i&"'") 或者
cnngp.execute("sjsj1 'Msgtable"&i&"'")
结果一样,仍然是报下面的错误:


Microsoft VBScript 编译器错误 错误 '800a03f6'

缺少 'End'

/iisHelp/common/500-100.asp,行242

Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e14'

[Microsoft][ODBC SQL Server Driver][SQL Server]异类查询要求为连接设置 ANSI_NULLS 和 ANSI_WARNINGS 选项。这将确保一致的查询语义。请启用这些选项,然后重新发出查询。

/test/njrb/login.asp,行100

可见不是语法的错误,应该是设置上有问题。
L_Lei 2005-07-25
  • 打赏
  • 举报
回复
能不能讲讲是哪有问题呀?我都修改了N遍了
tufun 2005-07-25
  • 打赏
  • 举报
回复
你的sp写的有问题
L_Lei 2005-07-25
  • 打赏
  • 举报
回复
有没有高手在啊,这有两只菜鸟等着学习呢,快点来吧!
安迪 2005-07-25
  • 打赏
  • 举报
回复
帮你顶,我学习一下!

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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