PDA

View Full Version : [SQL] Cambiare un valore nonostante: ON UPDATE NO ACTION


BEDBOI
05-07-2008, 10:33
Per favore aiutatemi!
Avendo:

Impiegato(Matricola, Dipartimento:Nome)
Dipartimento(Nome, Città)

ed una politica di NO ACTION per le operazioni di update e delete sui vincoli di integrità referenziale, come faccio per esempio ad aggiornare il nome del dipartimento da 'vecchio' a 'nuovo'?

Confido in voi :ave:

gugoXX
05-07-2008, 12:26
Ma il nome del dipartimento e' la chiave del dipartimento?
A parte il fortissimo consiglio di cambiare modello.

Inserisci un nuovo dipartimento con il nuovo nome, aggiorni tutti gli impegati, cancelli il vecchio dipartimento.

BEDBOI
05-07-2008, 12:48
Ma il nome del dipartimento e' la chiave del dipartimento?
A parte il fortissimo consiglio di cambiare modello.

Inserisci un nuovo dipartimento con il nuovo nome, aggiorni tutti gli impegati, cancelli il vecchio dipartimento.
Sì, ho midificato.
Non posso :cry:
Mi stai dicendo che devo duplicare la tabella Dip, e poi cancellarla?
Ma come la si puo' cancellare se c'e' NO ACTION?! :stordita:

BEDBOI
05-07-2008, 13:20
Con una cosa del genere ci arrivo a 100 errori?

INSERT INTO Dipartimento(Nome, Città)
SELECT "nuovo", Città
FROM Dipartimento
WHERE Nome="vecchio"

UPDATE Impiegato SET Dipartimento='nuovo'
WHERE Dipartimento='vecchio'

DELETE FROM Dipartimento
WHERE Nome='vecchio'
Gli insulti li leggero' tra un'oretta, grazie. :fagiano: