(c) Instytut Informatyki Politechniki Poznańskiej
‹#›
(c) Instytut Informatyki Politechniki Poznańskiej
14
Przykład dynamicznego SQL (2)
DECLARE
   sql_stmt VARCHAR2(100);
   bnd_id_zesp number(6);
   bnd_nazwa VARCHAR2(5) := 'KADRY';
   bnd_adres VARCHAR2(25) := 'SKLODOWSKIEJ-CURIE 1';
   prac_rec pracownicy%ROWTYPE;
BEGIN
   sql_stmt := 'INSERT INTO zespoly VALUES (seq_zespol.nextval, :1, :2) ' ||
       'RETURNING id_zesp INTO :3';
   EXECUTE IMMEDIATE sql_stmt
   USING bnd_nazwa, bnd_adres RETURNING INTO bnd_id_zesp;
   sql_stmt := 'SELECT * FROM pracownicy WHERE id_prac = :id';
   EXECUTE IMMEDIATE sql_stmt INTO prac_rec USING 100;
   DBMS_OUTPUT.PUT_LINE(prac_rec.nazwisko || ' - ' || prac_rec.etat);
END;