在三层架构中如何使用ADOSTOREDPROC调用后台存储过程

careerist 2003-11-18 03:33:36
我在应用服务层添加一个ADOSTOREDPROC,PROCEDURENAME和PARAMETERS也都设置好了,但是把ACTIVE设为TRUE时就报错,不知为什么?
...全文
32 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
rocker1218 2003-11-19
  • 打赏
  • 举报
回复
up
快来帮帮这位仁兄!
Up
Up
leapmars 2003-11-19
  • 打赏
  • 举报
回复
返回值也是从 Params 中获得的
careerist 2003-11-19
  • 打赏
  • 举报
回复
但我的存储过程有返回值
wangxj333 2003-11-19
  • 打赏
  • 举报
回复
如果这个存储过程不返回数据集,你却要设置Active=True(相当于Open),那当然要报错了,这和是否在三层架构里实现没有关系.
9527 2003-11-19
  • 打赏
  • 举报
回复
with TClientDataSet.Create(Application) do
try
Close;
RemoteServer:=sysDataBase.sckMis;
ProviderName:='prvSQL';
iSQL.Clear;
iSQL.Add('EXEC ' + PROC_CreateTask + ' :MyTask,:MyStatus');
CommandText:=iSql.Text;
Params.ParamByName('MyTask').AsString := ATaskName;
Params.ParamByName('MyStatus').AsString := BLANK;
try
Execute;
Result := True;
except
Result := False;
end;
finally
Free;
end;
careerist 2003-11-19
  • 打赏
  • 举报
回复
在三层里,我怎么在客户端往应用服务端送参数
mypiip 2003-11-19
  • 打赏
  • 举报
回复
如果存储过程返回结果集,就是用open或active=true;如果单独的数值之类用ExecProc。
wshuo 2003-11-18
  • 打赏
  • 举报
回复
PARAMETERS是有方向的,即输入还是输出,三层结构里用sql语句exec直接调用储存过程要方便一些。
careerist 2003-11-18
  • 打赏
  • 举报
回复
UP
careerist 2003-11-18
  • 打赏
  • 举报
回复
UP

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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