vuoi
o PayPal
tutte le volte che vuoi
LOGGING
CREATE TABLE "TEMPES04"."INGEGNERE" ("MEMBRO" NUMBER(2) NOT NULL, "SPECIALIZZ" VARCHAR2(20 byte) NOT NULL, CONSTRAINT "FK_INGEGNERE_MEMBRO_TEAM" FOREIGN KEY ("MEMBRO") REFERENCES "TEMPES04"."MEMBRO_TEAM" ("CODICE"), CONSTRAINT "PK_INGEGNERE" PRIMARY KEY ("MEMBRO") USING INDEX TABLESPACE "USERS" STORAGE (INITIAL 64K NEXT 0K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0) PCTFREE 10 INITRANS 2 MAXTRANS 255) TABLESPACE "USERS" PCTFREE 20 PCTUSED 0 INITRANS 2 MAXTRANS 255 STORAGE (INITIAL 16K NEXT 0K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0) LOGGING
CREATE TABLE "TEMPES04"."MECCANICO" ("MEMBRO" NUMBER(2) NOT NULL, "SPECIALIZZ" VARCHAR2(20 byte) NOT NULL, CONSTRAINT "FK_MECCANICO_MEMBRO_TEAM"
FOREIGNKEY("MEMBRO")REFERENCES "TEMPES04"."MEMBRO_TEAM"("CODICE"),
CONSTRAINT "PK_MECCANICO" PRIMARY KEY("MEMBRO")USING INDEXTABLESPACE "USERS"STORAGE ( INITIAL 64K NEXT 0K MINEXTENTS 1 MAXEXTENTS2147483645 PCTINCREASE 0) PCTFREE 10 INITRANS 2 MAXTRANS 255)TABLESPACE "USERS" PCTFREE 5 PCTUSED 0 INITRANS 2 MAXTRANS255STORAGE ( INITIAL 16K NEXT 0K MINEXTENTS 1 MAXEXTENTS2147483645 PCTINCREASE 0)LOGGING
CREATE TABLE "TEMPES04"."COLLAUDATORE" ("MEMBRO" NUMBER(2)NOT NULL, "AUTOVETTURA" VARCHAR2(2 byte) NOT NULL,
CONSTRAINT "FK_COLLAUDATORE_MEMBRO_TEAM" FOREIGNKEY("MEMBRO"),
CONSTRAINT "FK_COLLAUDATORE_AUTOVETTURA" FOREIGNKEY("AUTOVETTURA")REFERENCES "TEMPES04"."AUTOVETTURA"("SIGLA"),
CONSTRAINT "PK_COLLAUDATORE" PRIMARY KEY("MEMBRO")USING
CREATE TABLE "TEMPES04"."PILOTA" ( "MEMBRO" NUMBER(2) NOT NULL, "VITTORIE" NUMBER(3) NOT NULL, "MONDIALI" NUMBER(2) NOT NULL, "VITTPR" NUMBER(2), CONSTRAINT "FK_PILOTA_MEMBRO_TEAM" FOREIGN KEY ("MEMBRO") REFERENCES "TEMPES04"."MEMBRO_TEAM" ("CODICE"), CONSTRAINT "PK_PILOTA" PRIMARY KEY ("MEMBRO") ) USING INDEX TABLESPACE "USERS" STORAGE ( INITIAL 64K NEXT 0K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 ) PCTFREE 10 INITRANS 2 MAXTRANS 255) TABLESPACE "USERS" PCTFREE 5 PCTUSED 0 INITRANS 2 MAXTRANS 255 STORAGE ( INITIAL 16K NEXT 0K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 ) LOGGING
INITIAL 16K NEXT 0K MINEXTENTS 1 MAXEXTENTS2147483645 PCTINCREASE 0)LOGGING**************************************************CREATE TABLE "TEMPES04"."AUTOVETTURA" ("NOME" VARCHAR2(10 byte)NOT NULL, "SIGLA" VARCHAR2(2 byte) NOT NULL, "POTENZA"VARCHAR2(20 byte) NOT NULL, "MOTORE" VARCHAR2(20 byte) NOTNULL, "DESCRIZIONE" VARCHAR2(50 byte) NOT NULL,CONSTRAINT "PK_AUTOVETTURA" PRIMARY KEY("SIGLA")USING INDEXTABLESPACE "USERS"STORAGE ( INITIAL 64K NEXT 0K MINEXTENTS 1 MAXEXTENTS2147483645 PCTINCREASE 0) PCTFREE 10 INITRANS 2 MAXTRANS 255)TABLESPACE "USERS" PCTFREE 5 PCTUSED 0 INITRANS 2 MAXTRANS255STORAGE ( INITIAL 16K NEXT 0K MINEXTENTS 1 MAXEXTENTS2147483645 PCTINCREASE 0)LOGGING************************************************CREATE TABLE "TEMPES04"."GARA" ("NOME" VARCHAR2(20 byte) NOTNULL,"DATA" DATE NOT NULL, "LUOGO" VARCHAR2(20
CREATE TABLE "GARA" ( "NOME" VARCHAR2(20 byte) NOT NULL, "DATA" DATE NOT NULL, "CIRCUITO" VARCHAR2(50 byte) NOT NULL, "NUMERO_GIRI" NUMBER(3) NOT NULL, "GIRO_VELOCE" VARCHAR2(10 byte) NOT NULL, CONSTRAINT "PK_GARA" PRIMARY KEY("NOME") USING INDEX TABLESPACE "USERS" STORAGE (INITIAL 64K NEXT 0K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0) PCTFREE 10 INITRANS 2 MAXTRANS 255 ) TABLESPACE "USERS" PCTFREE 5 PCTUSED 0 INITRANS 2 MAXTRANS 255 STORAGE (INITIAL 16K NEXT 0K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0) LOGGING CREATE TABLE "TEMPES04"."PARTECIPAZIONE" ( "PILOTA" NUMBER(2) NOT NULL, "GARA" VARCHAR2(20 byte) NOT NULL, "AUTOVETTURA" VARCHAR2(2 byte) NOT NULL, "IND_GIROVELOCE" NUMBER(1) NOT NULL, "POSIZIONE" NUMBER(2) NOT NULL, CONSTRAINT "AUTOVETTURA_UNICA" UNIQUE("GARA", "AUTOVETTURA") USING INDEX TABLESPACE "USERS" STORAGE (INITIAL 64K NEXT 0K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0) PCTFREE 10 INITRANS 2
PCTINCREASE 0) PCTFREE 10 INITRANS 2 MAXTRANS 255, CONSTRAINT "POSIZIONE_UNICO" UNIQUE("GARA", "POSIZIONE") USING INDEXTABLESPACE "USERS" STORAGE ( INITIAL 64K NEXT 0K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0) PCTFREE 10 INITRANS 2 MAXTRANS 255) TABLESPACE "USERS" PCTFREE 5 PCTUSED 0 INITRANS 2 MAXTRANS 255 STORAGE ( INITIAL 16K NEXT 0K MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0) LOGGING Operazioni 1E ( ,’ ’,’ ’, _ , ); XEC MYINSERT PILOTA NOMEGARA AUTOVETTURA IND GIROVELOCE POSIZIONE Operazione 2, , _ , , SELECT NOME COGNOME DATA NASCITA INDIRIZZO NAZIONALITA FROM MEMBRO TEAM WHERE MEMBRO TEAM CODICE = 10 Operazione 3. , . SELECT M NOME M COGNOME_ FROM MEMBRO TEAM M PARTECIPAZIONE P WHERE M CODICE P PILOTA AND P GARA P AN ARINO AND P AUTOVETTURA = 'G S M' WHERE M CODICE P PILOTA AND P GARA P AN ARINO AND P AUTOVETTURA = 'C4'; Operazione 4. , . _ SELECT P GARA G GIRO VELOCE, FROM PARTECIPAZIONE P GARA G WHERE P GARA G NOME AND P = 1 AND G = 1;PILOTA AND P IND GIROVELOCE Operazione 5, SELECT GARA POSIZIONE FROM PARTECIPAZIONE=2 WHERE PILOTA Operazione 6. SELECT M.NOME, M.COGNOME_ FROM MEMBRO_TEAM M, MECCANICO ME WHERE M.CODICE_ME_MEMBRO = ME.CODICE_ME_MEMBRO AND SPECIALIZZAZIONE = 'G' Operazione 7 SELECT M.NOME, M.COGNOME_ FROM MEMBRO_TEAM M, INGEGNERE I WHERE M.CODICE_I_MEMBRO = I.CODICE_I_MEMBRO AND SPECIALIZZAZIONE = 'T' Operazione 8. SELECT POTENZA_MOTORE, DESCRIZIONE FROM AUTOVETTURA A, PARTECIPAZIONE P WHERE P.AUTOVETTURA_SIGLA = A.SIGLA AND P.GARA = 'GERMANIA' Procedura PL/SQL INSERIMENTO DATI GARA CREATE OR REPLACE PROCEDURE MYINSERT( PILOTA PARTECIPAZIONE.PILOTA%TYPE, GARA PARTECIPAZIONE.GARA%TYPE, AUTOVETTURA PARTECIPAZIONE.AUTOVETTURA%TYPE, IND_GIROVELOCE PARTECIPAZIONE.IND_GIROVELOCE%TYPE, POSIZIONE PARTECIPAZIONE.POSIZIONE%TYPE) AS BEGIN ... END;
INSERT INTO PARTECIPAZIONE (PILOTA, GARA, AUTOVETTURA, IND, GIROVELOCE, POSIZIONE)
VALUES ('P', 'G', 'A', 'IND', 'P');
COMMIT;
END;
Trigger (per l'aggiornamento automatico delle vittorie di un pilota del team)
CREATE OR REPLACE TRIGGER VITTORIE
AFTER INSERT ON PARTECIPAZIONE
DECLARE
PIL PILOTA.MEMBRO%TYPE;
NUMPR PILOTA.VITTPR%TYPE;
VITTORIEVAR PILOTA.VITTORIE%TYPE;
CURSOR VITTPILOTA IS
SELECT PILOTA, COUNT(POSIZIONE)
FROM PARTECIPAZIONE
WHERE POSIZIONE GROUP BY PILOTA;
BEGIN
OPEN VITTPILOTA;
LOOP
FETCH VITTPILOTA INTO PIL, VITTORIEVAR;
EXIT WHEN VITTPILOTA%NOTFOUND;
SELECT VITTPR INTO NUMPR
FROM PILOTA
WHERE MEMBRO = PIL;
UPDATE PILOTA
SET VITTORIE = VITTORIEVAR + NUMPR
WHERE MEMBRO = PIL;
END LOOP;
CLOSE VITTPILOTA;
END;
Procedura PL/SQL per l'inserimento dati membro_team con una sequenza
CREATE SEQUENCE "TEMPES04"."SEQ_MEMBRO"
INCREMENT BY 1
START WITH 45
MAXVALUE 1.0E28
MINVALUE 1
NOCYCLE
CACHE 20
NOORDERI M _TNSERIMENTO DATI EMBRO EAMCREATE OR REPLACE PROCEDURE DATIMEMBRO( INNOME MEMBRO_TEAM.NOME%TYPE,INCOGNOME MEMBRO_TEAM.COGNOME%TYPE,INDATA_NASCITA MEMBRO_TEAM.DATA_NASCITA%TYPE ,ININDIRIZZO MEMBRO_TEAM.INDIRIZZO%TYPE,INNAZIONALITA MEMBRO_TEAM.NAZIONALITA%TYPE)ASBEGININSERT INTOMEMBRO_TEAM(CODICE,NOME,COGNOME,DATA_NASCITA,INDIRIZZO,NAZIONALITA)VALUES(SEQ_MEMBRO.nextval,INNOME,INCOGNOME,INDATA_NASCITA,ININDIRIZZO,INNAZIONALITA);COMMIT;;END
Stampa di una frase a videoCREATE OR REPLACE TRIGGER "TEMPES04"."NOTIZIA" BEFOREINSERT ON "PARTECIPAZIONE" FOR EACH ROW declarenomevar MEMBRO_TEAM.NOME %TYPE;cognomevar MEMBRO_TEAM.COGNOME %TYPE;idpilota PARTECIPAZIONE.PILOTA %TYPE;nomegara PARTECIPAZIONE.GARA %TYPE;pos PARTECIPAZIONE.POSIZIONE %TYPE;BEGINPOS:= :new