已经写好一存储过程(存储过程名为MMM),需要传入参数A,B,C
执行后返回结果集D,其中结果集D中每列名称分别为X,Y,Z请问怎样调用此存储过程(存储过程名为MMM),怎样传入参数,怎样取得返回得结果集?请尽可能用代码解答,谢谢
感激不尽

解决方案 »

  1.   


       ADOCommand1.CommandText:='MMM';
        ADOCommand1.CommandType:=cmdStoredProc;
        ADOCommand1.Parameters.CreateParameter('userid',ftString,pdInput,20,A);
        ADOCommand1.Parameters.CreateParameter('username',ftString,pdInput,20,B);
        ADOCommand1.Parameters.CreateParameter('sex',ftString,pdInput,2,C);
         ADOQuery1.Recordset :=   cmd.Execute;方法有很多
      

  2.   

    可用Tstoredproc
    storedproc1.active=false;
    storedproc1.databasename="dbname";
    storedproc1.storedprocname="strdprcname";
    storedproc1.params.clear;
    storedproc1.params.createparam(ftstring,"A",ptinput);
    storedproc1.params.createparam(ftstring,"B",ptinput);
    storedproc1.params.createparam(ftstring,"C",ptinput);
    storedproc1.params.parambyname("A").asstring:=varstring1;
    storedproc1.params.parambyname("B").asstring:=varstring2;
    storedproc1.params.parambyname("C").asstring:=varstring2;
    storedproc1.active=true;
      

  3.   

    http://community.csdn.net/Expert/topic/3840/3840011.xml?temp=.6964685
      

  4.   

    其实不用这么难
    如果要求不高可以这样
    我就是这样做的
    query1.close;
    query1.sql.clear;
    query1.sql.add('存储过程 参数');
    query1.execsql;
    query1.close;
      

  5.   

    query1.close;
    query1.sql.clear;
    query1.sql.add('exec MMM '''+a+'''','''+b+'''','''+c+'''');
    query1.execsql;