Buongiorno a tutti!
Ho un problema con un trigger e non riesco a capire il motivo. Ora vi metto le tabelle:

codice:
CREATE TABLE GIOCATORI (
   SSN CHAR(16),
   NOME VARCHAR(25) NOT NULL,
   COGNOME VARCHAR(25) NOT NULL,
   RUOLO VARCHAR(30) NOT NULL,
   FOTO VARCHAR(60),
   SQUADRA VARCHAR(20),
   FOREIGN KEY (SQUADRA) REFERENCES SQUADRE(NOME) ON DELETE SET NULL,
   PRIMARY KEY (SSN)
);
codice:
CREATE TABLE SCHEDE_GIOCATORI (
   STAGIONE INT NOT NULL,
   COMPETIZIONE VARCHAR(30) NOT NULL,
   SQUADRA VARCHAR(20) NOT NULL,
   GIOCATORE CHAR(16) NOT NULL,
   GOAL_FATTI INT NOT NULL CHECK (GOAL_FATTI >= 0),                                                          
   GOAL_SUBITI INT NOT NULL CHECK (GOAL_SUBITI >= 0),
   ASSIST INT NOT NULL CHECK (ASSIST >= 0),
   CARTELLINI_GIALLI INT NOT NULL CHECK (CARTELLINI_GIALLI >= 0),
   CARTELLINI_ROSSI INT NOT NULL CHECK (CARTELLINI_ROSSI >= 0),
   FOREIGN KEY (COMPETIZIONE) REFERENCES COMPETIZIONI(NOME) ON DELETE SET NULL,
   FOREIGN KEY (SQUADRA) REFERENCES SQUADRE(NOME) ON DELETE SET NULL,
   FOREIGN KEY (GIOCATORE) REFERENCES GIOCATORI(SSN) ON DELETE CASCADE,
   PRIMARY KEY (GIOCATORE,COMPETIZIONE,SQUADRA,STAGIONE)
);
codice:
CREATE TABLE RISULTATI (
   CODICE INT,
   PUNTEGGIO_FINALE VARCHAR(7) NOT NULL,
   PUNTEGGIO_PRIMO_TEMPO VARCHAR(7) NOT NULL,
   PUNTEGGIO_SECONDO_TEMPO VARCHAR(7) NOT NULL,
   PUNTEGGIO_PRIMO_SUPP VARCHAR(7),
   PUNTEGGIO_SECONDO_SUPP VARCHAR(7),
   PUNTEGGIO_RIGORI VARCHAR(7),
   GOAL_SEGNATI INT NOT NULL CHECK (GOAL_SEGNATI >= 0),
   GOAL_SQUADRA_CASA INT NOT NULL CHECK (GOAL_SQUADRA_CASA >= 0),
   GOAL_SQUADRA_TRASFERTA INT CHECK (GOAL_SQUADRA_TRASFERTA >= 0),
   VIDEO_HIGHLIGHTS VARCHAR(60), 
   PRIMARY KEY (CODICE)
);

CREATE TABLE INCONTRI (
   CODICE INT, 
   NOME VARCHAR(30) NOT NULL,
   DATA_INCONTRO DATE NOT NULL,
   STAGIONE INT NOT NULL,
   COMPETIZIONE VARCHAR(30) NOT NULL,
   CALENDARIO INT NOT NULL,
   NUMERO_AVVENIMENTO INT NOT NULL,
   RISULTATO INT NOT NULL,
   FOREIGN KEY (COMPETIZIONE) REFERENCES COMPETIZIONI(NOME) ON DELETE CASCADE,
   FOREIGN KEY (CALENDARIO) REFERENCES PALINSESTI(CODICE) ON DELETE SET NULL,
   FOREIGN KEY (RISULTATO) REFERENCES RISULTATI(CODICE) ON DELETE CASCADE,
   PRIMARY KEY(CODICE)
);

CREATE TABLE MARCATORI (
   GIOCATORE CHAR(16) NOT NULL,
   RISULTATO INT NOT NULL,
   MINUTO INT NOT NULL CHECK (MINUTO > 0),
   FOREIGN KEY (GIOCATORE) REFERENCES GIOCATORI(SSN) ON DELETE CASCADE,
   FOREIGN KEY (RISULTATO) REFERENCES RISULTATI(CODICE) ON DELETE CASCADE,
   PRIMARY KEY(GIOCATORE, RISULTATO, MINUTO)
);
Ecco il trigger che mi dà problemi quando voglio inserire in MARCATORI

codice:
create or replace trigger trigger_name
after insert on marcatori
for each row
declare 
x char(16);
z number;
p varchar(30);
y varchar(20);
begin
  x := :new.giocatore;
  select i.stagione into z, i.competizione into p
    from ( marcatori m join risultati r on m.risultato=r.codice ) join incontri i on m.risultato=i.risultato
    where (new.risultato=r.codice and new.risultato=i.risultato);
  select squadra into y
    from marcatori join giocatori on giocatore=ssn;
  update schede_giocatori set goal_fatti=goal_fatti+1 where competizione=p and stagione=z and squadra=y and giocatore=x;
end;
Perchè mi dà
TRIGGER trigger_name compilato
Warning: esecuzione completata con avvertenze
?