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

PL SQL hvordan man vælger alle kolonner

Jeg er ikke sikker på, om jeg forstår dit spørgsmål og krav.

Men hvis du leder efter en måde at få en tabels indhold på, eller en del deraf, er det sandsynligvis sådan, du ville gribe det an:

create table tq84_test_table (
  col_1 number,
  col_2 varchar2(10),
  col_3 date
);

insert into tq84_test_table values (1, 'one'  , sysdate);
insert into tq84_test_table values (2, 'two'  , sysdate+1);
insert into tq84_test_table values (3, 'three', sysdate-1);


create or replace package tq84_sss as

  type record_t is table of tq84_test_table%rowtype;

  function GetADedIcWarningsProv return record_t;

end;
/

create or replace package body tq84_sss as

  function GetADedIcWarningsProv return record_t 
  is 
      ret record_t; 
  begin

      select * bulk collect into ret
      from tq84_test_table;

      return ret;

  end GetADedIcWarningsProv;

end;
/

Du vil så senere bruge denne funktion sådan:

declare

  table_content tq84_sss.record_t;

begin

  table_content := tq84_sss.GetADedIcWarningsProv;

  for i in 1 .. table_content.count loop

      dbms_output.put_line(table_content(i).col_1 || ' ' ||
                           table_content(i).col_2 || ' ' ||
                           table_content(i).col_3 
                          );

  end loop;

end;
/


  1. Flyt node i træet Indlejrede sæt

  2. Hvorfor i SQL kan NULL ikke matche med NULL?

  3. VÆLG .. INTO for at oprette en tabel i PL/pgSQL

  4. Mariadb-forbindelsesklient:Adgang nægtet for bruger (ved hjælp af adgangskode:NEJ) på mysql 8.0