sql >> Databáze >  >> RDS >> Oracle

Oracle PL/SQL - Jak vytvořit jednoduchou proměnnou pole?

Pro pole s pevnou velikostí můžete použít VARRAY:

declare
   type array_t is varray(3) of varchar2(10);
   array array_t := array_t('Matt', 'Joanne', 'Robert');
begin
   for i in 1..array.count loop
       dbms_output.put_line(array(i));
   end loop;
end;

Nebo TABLE pro neohraničené pole:

...
   type array_t is table of varchar2(10);
...

Slovo "tabulka" zde nemá nic společného s databázovými tabulkami, což je matoucí. Obě metody vytvářejí pole v paměti.

U obou z nich musíte před přidáním prvků inicializovat a rozšířit kolekci:

declare
   type array_t is varray(3) of varchar2(10);
   array array_t := array_t(); -- Initialise it
begin
   for i in 1..3 loop
      array.extend(); -- Extend it
      array(i) := 'x';
   end loop;
end;

První index je 1, nikoli 0.



  1. Připojte se ke vzdálenému serveru postgresql na amazon ec2

  2. Případy použití MariaDB a Docker, část 1

  3. Nasaďte skupiny dostupnosti SQL Server AlwaysOn v systému Linux

  4. Použití OAuth k ověření vašeho připojení ODBC k Salesforce.com