Hvordan får jeg resultat (dataset) fra stored procedure i Delphi?
Jeg kan ikke finde ud af at kalde en stored procedure (Oracle) fra Delphi som giver mig et resultat tilbage som en REF CURSOR.Min procedure er i en package. Ser således ud:
create or replace PACKAGE my_var_pkg AS
TYPE emp_refcur_typ IS REF CURSOR RETURN employees%ROWTYPE;
TYPE my_refcur_typ IS REF CURSOR;
my_var_pi NUMBER := 3.14016408289008292431940027343666863227;
my_var_e NUMBER := 2.71828182845904523536028747135266249775;
my_var_sales_tax NUMBER := 0.0825;
END my_var_pkg;
create or replace PROCEDURE get_emp_info (firstname IN VARCHAR2,
lastname IN VARCHAR2, emp_cursor IN OUT my_var_pkg.my_refcur_typ) AS
BEGIN
OPEN emp_cursor FOR SELECT e.employee_id, e.first_name, e.last_name, e.email,
e.phone_number, e.hire_date, j.job_title FROM employees e
JOIN jobs j ON e.job_id = j.job_id
WHERE SUBSTR(UPPER(first_name), 1, LENGTH(firstname)) = UPPER(firstname)
AND SUBSTR(UPPER(last_name), 1, LENGTH(lastname)) = UPPER(lastname);
END get_emp_info;
OBS! Læg mærke til at emp_cursor er IN OUT !
Når jeg kalder proceduren kan jeg ikke finde ud af hvad jeg skal give som 3. parameter (cursoren), for at det vil virke?
Resultatet vil jeg bare have vist i et DBGrid.