我有一个 Oracle 存储过程,接受记录表作为其输入参数:
TYPE JREC is record
(
CUSTOMERID COMPANYS.COMPANYID%TYPE ,
JOBID JOBS.JOBID%TYPE,
-----
);
TYPE TJOBLIST IS TABLE OF JREC INDEX BY BINARY_INTEGER;
PROCEDURE UPDATEJOBS(JRECS IN TJOBLIST )
IS
BEGIN
FOR i IN JRECS .FIRST .. JRECS .LAST LOOP
-----PROCEDURE BODY---
请告诉我如何从 Delphi 调用此过程。我正在使用 RAD Studio 2007
谢谢,
普拉迪普
您可以像这样调用:
DECLARE
L_TABLE TJOBLIST ;
NCOUNT PLS_INTEGER;
BEGIN
L_TABLE := TJOBLIST(); --Create table
L_TABLE.extend; --Add an element
NCOUNT := L_TABLE.COUNT();
L_TABLE(NCOUNT).CUSTOMERID := 1;
L_TABLE(NCOUNT).JOBID := 10;
L_TABLE.extend; --Add another element
NCOUNT := L_TABLE.COUNT();
L_TABLE(NCOUNT).CUSTOMERID := 2;
L_TABLE(NCOUNT).JOBID := 20;
L_TABLE.extend; --Add another element
NCOUNT := L_TABLE.COUNT();
L_TABLE(NCOUNT).CUSTOMERID := 3;
L_TABLE(NCOUNT).JOBID := 30;
--.. and so on
--Call the procedure and pass the table as a parameter
UPDATEJOBS(L_TABLE);
END;