PL/sql typy tablicowe

0

potrzebuje pomocy z typami tablicowymi, chce je po prostu uzyc, chce zeby tablica(0) i tablica(1) mialy jakas tam wartosc varchar i je ustawic poprzez set ranga = tablica(0) jednak ciagle nie chce mi to dzialac, pomoze ktos???



PROCEDURE ADD_POST(tematid NUMBER, uzytkownikid NUMBER, contenttt Varchar) AS postid NUMBER; x VARCHAR(100); y VARCHAR(100);

BEGIN
declare type tablica is table of varchar2(300)
index by integer; 
tab tablica;
begin
tab(0):='nowy';
tab(1):='zaawansowany';
end;
x:=Trunc((SYSDATE - LASTPOSTDATE(uzytkownikid))*100000);
y:= 30-x;
if totaltopics2(uzytkownikid)<1 then
          raise_application_error(-20010, 'Przed dodaniem postu przywitaj sie w dziale Przedstaw sie');
else
if SYSDATE - LASTPOSTDATE(uzytkownikid) < 1/(24*120) THEN
          raise_application_error(-20010, 'musisz poczekac 30sekund przed kolejnym postem! Pozostalo ' || y || 'sekund');
          end if;
IF totalPOSTS2(uzytkownikid)>5 THEN
 INSERT INTO post( post_id, temat_id,uzytkownik_id,contentt)  VALUES (postid,tematid,uzytkownikid,contenttt);
 postid:=post_seq.currval;
 UPDATE Uzytkownik 
SET ranga = tab(1)     ------------------ tu przypisuje i nie dziala :( wysypuje sie blad
 where uzytkownik_id=uzytkownikid and ranga!='ADMIN' and ranga!='MODERATOR';


113/2     PL/SQL: SQL Statement ignored
114/13    PL/SQL: ORA-00904: "TAB": invalid identifier

pomoze ktos? pilne, to nie caly kod ale reszta jest ok

0

Nie znam dobrze Ora, ale na pewno tab(1), a nie tab[1] ?

0

tak, ma byc (), na kazdej stronie tak jest :D

0
tab tablica;

Nie powinno być odwrotnie? czyli tablica tab;?

0

wedlug poradnikow ktore widzialem to nie ;/

0

Rozwiazane, end pierwszy powinien byc na koncu

1 użytkowników online, w tym zalogowanych: 0, gości: 1