注册 登录
编程论坛 VFP论坛

如何在CA生成器中调用SQL存储过程,并把存储过程中的返回值输出。

ykxby001 发布于 2025-05-29 11:09, 203 次点击
在CA设计器中的语句:EXECUTE sp_abc ?cwhere, ?@totalCount
?@totalCount为返回值写法,用exec 语句调用正常,CA中不行,求解。
2 回复
#2
yiyanxiyin2025-05-30 10:09
在CursorAdapter中,改用CALL语法,并通过Parameters集合定义输出参数:
程序代码:

* 假设 oCA 是 CursorAdapter 实例
oCA.SelectCmd = "CALL sp_abc(?, ?)"  * 使用 CALL 替代 EXECUTE

* 定义参数
oCA.AddParameter("cwhere", SQL_VARCHAR, SQL_PARAM_INPUT)
oCA.AddParameter("totalCount", SQL_INTEGER, SQL_PARAM_OUTPUT)  * 显式声明输出参数

* 执行查询
oCA.FillCursor("myCursor")
#3
ykxby0012025-05-30 20:16
回复 2楼 yiyanxiyin
这代码能执行?AddParameter应该没有此属性吧
正常写exec是可以接收存储过程返回的参数值的。但通过CA设计器执行的EXE不知道怎么接收,真心请教高手,万分感谢。
1