--过程
create or replace procedure p(v1 in number,v2 out varchar) is
begin
select bookname into v2 from tab1 where id = v1 and rownum <= 1;
end;
--在Oracle中测试
set serveroutput on
declare
result tab1.bookname%type;
begin
p(1,result);
dbms_output.put_line(result);
end;
显示book_name
--服务器端程序
在Delphi7中创建Remote Data Module,放入ADOConnection1,ADOStoredProc1,DataSetProvider1控件,设置好数据库连接和ADOStoredProc1的两个参数(一个名称叫v1,input类型,另一个名称叫v2,output类型),打开ScktSrvr.exe,端口为默认的211。
--客户端程序
创建工程,设置好SocketConnection1和ClientDataSet的连接属性,放一个按钮在单击事件中:
procedure TForm1.Button1Click(Sender: TObject);
begin
ClientDataSet.Execute;
ShowMessage(ClientDataSet.Params.ParamByName('v2').AsString);
end;
弹出字符串book_name