/* Dette script opretter forudsætninger til samlet gennemgang. Indholdet kan kopieres direkte ind i en SQL-prompt eller scriptet kan kaldes fra en SQL-prompt med kommandoen "@opgave_2.txt". Ved anvendelse af Oracles SQL*Plus kan det give problemer at kopiere indholdet direkte ind i prompten, fordi der kun kan indsættes en relativ begrænset mængde data i SQL*Plus af gangen. */ /* Eksisterende tabeller slettes mht. at de studerende evt. kan have navngivet tabeller anderledes. */ DROP TABLE ordrelinie; DROP TABLE ordrelinier; DROP TABLE ordrerlinie; DROP TABLE ordrerlinier; DROP TABLE ordrelinje; DROP TABLE ordrelinjer; DROP TABLE ordrerlinje; DROP TABLE ordrerlinjer; DROP TABLE ordre; DROP TABLE ordrer; DROP TABLE medarb; DROP TABLE medarbejder; DROP TABLE medarbejdere; DROP TABLE vare; DROP TABLE varer; DROP TABLE kunde; DROP TABLE kunder; DROP TABLE postnr; DROP TABLE postnummer; DROP TABLE postnumre; DROP TABLE afdeling; DROP TABLE afdelinger; DROP VIEW kunde_vare; DROP VIEW kunde_varer; DROP VIEW kunder_vare; DROP VIEW kunder_varer; DROP SEQUENCE kunde_seq; DROP SEQUENCE kunder_seq; DROP SEQUENCE vare_seq; DROP SEQUENCE varer_seq; DROP SEQUENCE ordre_seq; DROP SEQUENCE ordrer_seq; DROP SEQUENCE ordrelinie_seq; DROP SEQUENCE ordrelinier_seq; PURGE RECYCLEBIN; -- Nye tabeller oprettes i henhold til opgaveteksten (SQL-opgaver 1 og 2) CREATE TABLE afdelinger ( afdeling_id NUMBER(6) NOT NULL, afdeling VARCHAR2(30) NOT NULL, afdeling_far NUMBER(6) ); ALTER TABLE afdelinger ADD CONSTRAINT afdelinger_pk PRIMARY KEY (afdeling_id); ALTER TABLE afdelinger ADD CONSTRAINT afdelinger_afdelinger_fk FOREIGN KEY (afdeling_far) REFERENCES afdelinger (afdeling_id); ALTER TABLE afdelinger ADD CONSTRAINT afdelinger_afdeling_far_check CHECK (afdeling_id != afdeling_far); INSERT INTO afdelinger VALUES (10,'Virksomhed',null); INSERT INTO afdelinger VALUES (40,'Produktion',10); INSERT INTO afdelinger VALUES (30,'Indkøb',10); INSERT INTO afdelinger VALUES (20,'Salg',10); INSERT INTO afdelinger VALUES (50,'Udvikling',40); COMMIT;