Delphi calls an Oracle stored procedure and returns an example of a data set.

xiaoxiao2021-03-06  42

Environment: Win2000 Oracle92

First, first build a package in Oracle

Create Or Replace Package PKG_Test

AS

Type myrctype

IS ref cursor;

Procedure Get (i_test)

Integer, p_rc

Out myrctype);

END PKG_TEST;

Create Or Replace Package Body PKG_Test

AS

Procedure Get (i_test)

Integer, p_rc

OUT MyRCTYPE)

IS

Begin

IF i_test = 0

THEN

Open p_rc

For Select sysdate

From Dual;

Else

Open p_rc

For select *

From tab;

END IF;

End Get;

END PKG_TEST;

Second, use

Delphi call

Build a form, drag the control Adoconnection1, AdoStoredProc1, and Button1.

Procedure TFORM1.BUTTON1CLICK (Sender: TOBJECT);

Begin Try with adoconnection1

DO

Begin

CONNECTIONSTRING: =

'Provider = oraoledb.oracle.1;'

'Password = password;'

'Persist security info = true;'

'User ID = User Name;'

'Data Source = Database name;'

'Extended Properties = "PLSQLRSET = 1;"

Open;

END;

Except

ShowMessage ('connection is not successful ";

EXIT;

END;

Try with adoStoredProc1

DO

Begin connection: = adoconnection1;

Parameters.clear;

Procedurename: = 'pkg_test.get';

Parameters.createParameter ('p1', ftinteger, pdinput, 10, 1);

Open;

END;

Except ShowMessage ('Unforgettable Procedure.');

END;

END;

转载请注明原文地址:https://www.9cbs.com/read-67115.html

New Post(0)