中间层:
procedure TGasServerRemoteDataModule.ExecProc(const Param_time:WideString);
begin
    StoredProc1.ParamByName('STRTIME').AsString := Param_time;
    StoredProc1.Prepare;
    StoredProc1.ExecProc;
end;客户端:
  DCOMConnection1.Connected := True;
  DComConnection1.AppServer.ExecProc('200301');

解决方案 »

  1.   

    存储过程已经写进Oracle数据库,中间层只在 remote data module中写实现代码来调用这个存储过程,客户端传入参数,调用此过程。但是运行时,客户端老是说没有数据库没有登录,不知道这是为什么?
      

  2.   

    StoredProc1是否指定了存储过程名称
      

  3.   

    当然指定了啊,指定数据库连接是成功的
    DatabaseName : ORACLE_DB
    StoredProcName :PROCEDURE_GUANDAO
      

  4.   

    1.我事先在oracle中写了一个存储过程create or replace procedure procedure_guandao(strTime varchar2),运行成功。
    2.我在应用程序服务器中写了一个方法,使用TStoredProc控件来运行这个存储过程,实现的代码写在remote data module中。
    3.在客户端调用这个方法,传入参数,执行存储过程。
      

  5.   

    你的存储过程名是在设计时选择好的还是程序运行时动态设置的,前者在设计时可以看到存储过程的参数,后者则要通过CreateParam动态创建参数才可以
      

  6.   

    是设计时选择好,事先在StoredProc1上指定好数据库和存储过程名,也看到了存储过程的参数