sql >> Database teknologi >  >> RDS >> Oracle

Er det muligt at udlæse en SELECT-sætning fra en PL/SQL-blok?

Du kan gøre dette i Oracle 12.1 eller nyere:

declare
    rc sys_refcursor;
begin
    open rc for select * from dual;
    dbms_sql.return_result(rc);
end;

Jeg har ikke DBVisualizer at teste med, men det skal nok være dit udgangspunkt.

For flere detaljer, se implicitte resultatsæt i Oracle 12.1 New Features Guide, Oracle Base osv.

For tidligere versioner, afhængigt af værktøjet, vil du muligvis være i stand til at bruge ref cursor bind variabler som dette eksempel fra SQL*Plus:

set autoprint on

var rc refcursor

begin
    open :rc for select count(*) from dual;
end;
/

PL/SQL procedure successfully completed.


  COUNT(*)
----------
         1

1 row selected.


  1. Hvad er brugen af ​​firkantede parenteser [] i sql-sætninger?

  2. Sådan tilføjes en separator til en sammenkædet streng i MySQL – CONCAT_WS()

  3. Sådan sikkerhedskopieres RAC VM'er

  4. Hvad er den bedste praksis for at bruge en GUID som en primær nøgle, specifikt med hensyn til ydeevne?