哪位大侠能给我一个ADO调用存储过程的例子啊? 要有返回参数的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 with ADOStoredProc1 do begin close; procedurename:='ds_crelossalltab'; parameters.Clear; parameters.CreateParameter('ftime',ftstring,pdinput,10,null); parameters.CreateParameter('ltime',ftstring,pdinput,10,null); parameters.CreateParameter('lossdept',ftstring,pdoutput,15,null);//pdoutput parameters.Items[0].Name :='@ftime'; parameters.Items[1].Name :='@ltime'; parameters.Items[2].Name :='@lossdept'; parameters[0].Value :=datetostr(dtp1.date); parameters[1].Value :=datetostr(dtp2.date); execproc; showmessage(parameters[2].Value); //返回的参数 end; qry.Close; qry.SQL.Clear; qry.SQL.Add('Begin'); qry.SQL.Add('EXP_FROM_UNIX_GJ(:gsdw,:readdate,:retint,:retmsg);');//注意要有分号 Qry.SQL.Add('End;');//同上 qry.Parameters[0].Value := gsdw; qry.Parameters[1].Value := readate; qry.Parameters[2].Direction := pdOutput;//后面为输出参数 qry.Parameters[3].Direction := pdOutput; qry.Parameters[2].Value := '####'; qry.Parameters[3].Value := '####'; qry.Prepared; qry.ExecSQL; errmsg := errmsg+#13+qry.Parameters[3].Value;返回值 with Login_SP do begin Close; ProcedureName:='Exitsts_User;1'; Parameters.Clear; parameters.Refresh; Parameters.ParamByName('@UName').Value:=LogN_Box.Text; LogIner:=Logn_box.Text; Parameters.ParamByName('@UPSW').Value:=LogP_EDIT.Text; LogInPW:=LogP_EDIT.Text; ReTag:=Parameters.ParamByName('@Return').Value:=0; Prepared:=true; ExecProc; showmessage(booltostr(ReTag); end; 错了,应是: with Login_SP do begin Close; ProcedureName:='Exits_user;1'; Parameters.Clear; parameters.Refresh; Parameters.ParamByName('@UName').Value:=LogN_Box.Text; LogIner:=Logn_box.Text; Parameters.ParamByName('@UPSW').Value:=LogP_EDIT.Text; LogInPW:=LogP_EDIT.Text; Parameters.ParamByName('@Return').Value:=0; Prepared:=true; ExecProc; showmessage(Booltostr(parameters.parambyname('@return').value)); end; 求日期和时间输入控件,谢谢啊 我下的Dephi2010没有帮助 编写组件,如何添加外部事件? random的使用问题 内存泄漏? ASC码61是a,那么ASC码AA是什么?delphi中如何传送ASC码? 太怪了,请大家帮忙看看!新年快乐 怪!怪!怪!为什么我用Qreport做的报表在打印时总打印上次打印的内容? 高价学习,rose是什么东西?? 有没有哪位用线程操作数据库的经验? 以下C++Builder代码如何用Delphi5写? what is bho? 它做什么用??
close;
procedurename:='ds_crelossalltab';
parameters.Clear;
parameters.CreateParameter('ftime',ftstring,pdinput,10,null);
parameters.CreateParameter('ltime',ftstring,pdinput,10,null);
parameters.CreateParameter('lossdept',ftstring,pdoutput,15,null);//pdoutput
parameters.Items[0].Name :='@ftime';
parameters.Items[1].Name :='@ltime';
parameters.Items[2].Name :='@lossdept';
parameters[0].Value :=datetostr(dtp1.date);
parameters[1].Value :=datetostr(dtp2.date);
execproc;
showmessage(parameters[2].Value); //返回的参数
end;
qry.SQL.Clear;
qry.SQL.Add('Begin');
qry.SQL.Add('EXP_FROM_UNIX_GJ(:gsdw,:readdate,:retint,:retmsg);');//注意要有分号
Qry.SQL.Add('End;');//同上
qry.Parameters[0].Value := gsdw;
qry.Parameters[1].Value := readate;
qry.Parameters[2].Direction := pdOutput;//后面为输出参数
qry.Parameters[3].Direction := pdOutput;
qry.Parameters[2].Value := '####';
qry.Parameters[3].Value := '####';
qry.Prepared;
qry.ExecSQL;
返回值
begin
Close;
ProcedureName:='Exitsts_User;1';
Parameters.Clear;
parameters.Refresh;
Parameters.ParamByName('@UName').Value:=LogN_Box.Text;
LogIner:=Logn_box.Text;
Parameters.ParamByName('@UPSW').Value:=LogP_EDIT.Text;
LogInPW:=LogP_EDIT.Text;
ReTag:=Parameters.ParamByName('@Return').Value:=0;
Prepared:=true;
ExecProc;
showmessage(booltostr(ReTag);
end;
with Login_SP do
begin
Close;
ProcedureName:='Exits_user;1';
Parameters.Clear;
parameters.Refresh;
Parameters.ParamByName('@UName').Value:=LogN_Box.Text;
LogIner:=Logn_box.Text;
Parameters.ParamByName('@UPSW').Value:=LogP_EDIT.Text;
LogInPW:=LogP_EDIT.Text;
Parameters.ParamByName('@Return').Value:=0;
Prepared:=true;
ExecProc;
showmessage(Booltostr(parameters.parambyname('@return').value));
end;