请教adocommand调用带参数的存储过程。例如:存储过程名为:Pro_Stu,参数为string型abc','123',返回值为string型'789'。望前辈能给出语句,先谢谢啦~。

解决方案 »

  1.   

    adocommand不能方便的直接处理返回值。其他方法有二:
    1、使用ADOProcedure。这个是专门调用存储过程的,使用很方便、
    2、使用ADOQuery。例如:
      ADOQuery1.SQL.Text := 'select (dbo.Pro_Stu(''abc'', ''123''))';
      ADOQuery1.Open;
      ShowMessage(ADOQuery1.Fields[0].AsString);————————————————————————————————————
    宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
    ————————————————————————————————————
      

  2.   


    if ADOStoredProc1.Parameters.ParamByName('@参数变量').Value = 值 then
    begin
     ADOStoredProc1.ExecProc;(你要完成的功能)
    end
    else
     你要完成的功能)
      

  3.   

    用adoquery的话,如果没有返回值会出错,不知有什么办法解决。还有麻烦前辈给出adostoredproc或adocommand的具体代码。
      

  4.   

    如果存储过程已经定义了参数则不需要添加参数 把存储过程名称复制给TADOStoredProc后 refresh 参数就可以调用了