asp调用存储过程出错,请帮忙指点一下:
存储过程如下:
CREATE PROCEDURE sp_AddFavorite
@Tables varchar( 100 ),
@FieldsName varchar( 1000 ),
@FieldsValue varchar( 1000 )
As
Exec( 'INSERT INTO '+@Tables+' ( '+@FieldsName+' ) VALUES ( '+@FieldsValue+' )' )
GO
程序如下:
set conn=server.CreateObject("adodb.connection")
conn.connectionstring = CONNECTION_STRING
set cmd=server.CreateObject("adodb.command")
conn.Open
set cmd.ActiveConnection=conn
With cmd
.CommandText="sp_AddFavorite"
.Parameters.Append .CreateParameter("@Tables", adVarWChar ,adParamInput, 100 )
.Parameters.Append .CreateParameter("@FieldsName", adVarWChar ,adParamInput, 1000 )
.Parameters.Append .CreateParameter("@FieldsValue", adVarWChar ,adParamInput, 1000 )
.Parameters("@Tables")=" ETFavorite "
.Parameters("@FieldsName")=" SID, TableName, KeyField, IsReport, IDField, ID "
.Parameters("@FieldsValue")= Session( "SID" ) & ", '" & parseSqlStr( Request.QueryString( "TableName" ) ) & "' , '" & parseSqlStr( Request.QueryString( "KeyField" ) ) & "' , " & Cint( Request.QueryString( "IsReport" ) ) & ", '" & parseSqlStr( Request.QueryString( "IDField" ) ) & "', " & Request.QueryString( "ID" )
End With
cmd.Execute()
好像一执行到.Parameters.Append .CreateParameter("@Tables", adVarWChar ,adParamInput, 100 )这句话就报错,报http-500内部服务器错误。。。。。。什么原因?