I have created the table \"Risiko\" which shouldntbe dynamic, i tought it would be that simple but it was not. How should i solve it? and what am i doing wrong?
You need to use execute immediate
and probably commit
the changes at the end.
CREATE OR REPLACE PROCEDURE TABLERISIKO IS
BEGIN
execute immediate 'drop table risiko';
execute immediate 'CREATE TABLE Risiko
(
RNr INTEGER,
Projekt INTEGER,
Text VARCHAR(25),
Gruppe INTEGER,
Auswirkung INTEGER,
WKeit INTEGER,
Pruefdatum DATE,
PRIMARY KEY (RNr),
CONSTRAINT FKRisiko1 FOREIGN KEY (Projekt)
REFERENCES Projekt(ProNr),
CONSTRAINT FKRisiko2 FOREIGN KEY (Gruppe)
REFERENCES Risikogruppe (RGNr),
CONSTRAINT PosAuswirkung CHECK(Auswirkung >=0),
CONSTRAINT WKeitProzent CHECK(WKeit>=0 AND WKeit<=100)
)';
execute immediate 'INSERT INTO Risiko
VALUES(1,1,''Anforderungenunklar'',1,50000,30
,TO_DATE(''25.01.06'',''DD.MM.YY''))';
execute immediate 'INSERT INTO Risiko
VALUES(2,1,''Abnahmeprozess offen'',2,30000,70
,TO_DATE(''26.02.06'',''DD.MM.YY''))';
execute immediate 'INSERT INTO Risiko
VALUES(3,2,''Ansprechpartner wechseln'',1,20000,80
,TO_DATE(''06.05.06'',''DD.MM.YY''))';
execute immediate 'INSERT INTO Risiko
VALUES(4,2,''neue Entwicklungsumgebung'',3,40000,20
,TO_DATE(''05.10.06'',''DD.MM.YY''))';
commit;
END;