Sono nuova: qualcuno può aiutarmi a capire cosa sbaglio?

di Anonimizzato14729 il
2 risposte
Pur non essendo digiuna di programmazione, sono alle prime armi col SQL. E' da ieri che cerco in tutti i modi di far funzionare queste poche righe di codice.
CREATE table Prova1 (

Id INTEGER PRIMARY KEY,

Nome VARCHAR(50));
CREATE table Prova2 (

Id INTEGER PRIMARY KEY,

Nome VARCHAR(50),

toProva1 INTEGER REFERENCES Prova1(Id)
ON DELETE CASCADE
ON UPDATE CASCADE

)
DROP table Prova1 CASCADE;

Ricevo sempre un errore di sintassi con CASCADE. Vorrei cancellare subito la tabella Prova1, senza eliminare prima Prova2. Sbaglio qualcosa io nel codice o si tratta proprio di qualcosa di impossibile in SQL? Nel caso, qualcuno può consigliarmi un buon manuale reperibile in rete o anche on line, preferibilmente in italiano, ma anche in inglese non è un problema. Insomma, confido in voi. Sto alla frutta :'(

2 Risposte

  • ToProva1 INTEGER REFERENCES Prova1(Id)

    vuoi creare una chiave esterna?
  • Ciao,
    con CASCADE fai in modo che se cancelli dei valori da prova1 vengano cancellati anche su prova2.
    ma anche a tebelle vuote, nn puoi cmq cancellare una tabella con riferimento ad un altra, prima se proprio deve cancellare il vincolo...
Devi accedere o registrarti per scrivere nel forum
2 risposte