我收到错误“过程sp_Get--没有提供参数和参数”。 我从CF组件调用一个简单的存储过程。
存储过程如下
GO ALTER PROCEDURE [dbo].[sp_GetTest]
@TestId INT AS BEGIN
SET NOCOUNT ON;
SELECT T.TestId
,T.TestDetail
,T.isPassedTest
FROM Test T
WHERE T.TestId = @TestId
ORDER BY T.TestDetail
END
我用以下方式在CF8组件/方法中调用它: -
<cffunction name="GetTest" returntype="query" access="public" output="false">
<cfargument name="Test" type="......Test.Test" required="true">
<cfstoredproc procedure="sp_GetTest" datasource="#variables.datasource#">
<cfprocparam cfsqltype="CF_SQL_INTEGER" value="#arguments.Test.GetTestId()#">
<cfprocresult name="theTest" resultset="1">
</cfstoredproc>
<cfscript>return theTest;</cfscript>
</cffunction>
请帮我调试错误! 谢谢
答案 0 :(得分:6)
是否有可能创建两个版本的存储过程,一个使用dbo作为所有者并定义了此参数,另一个版本是用户通过其作为所有者连接到数据库并且未定义此参数?您可以尝试使用“dbo.sp_GetTest”作为CF中的过程名吗?