BSOD
06-11-2007, 15:53
Ciao,
vorrei sapere se esiste una qualche query per fare l'update solo su di un range di campi accomunati soltanto dal fatto che il loro nome inizia per "ID_".
In pratica ho una tabella con diversi campi contenenti i valori delle chiavi primarie di altre tabelle.
TABELLA_DISNEY
----------------
campo: campo_1
campo: campo_2
campo: campo_3
campo: id_pippo
campo: id_pluto
campo: id_paperino
campo: id_...
campo: id_...
campo: id_...
campo: id_nonnaPapera
Ovviamente uso quegli id per relazionare la tabella Disney a svariate tabelline 'figlio'.
Se cancello un record da una tabella 'figlio' vorrei che, come consuetudine, l'ID del record che ho cancellato sparisse da qualsiasi campo della tabella TABELLA_DISNEY a prescindere da quale sia il campo che la contenga ma a patto che il campo sia uno di quelli contenenti gli ID che servono per le relazioni e non uno degli altri che potrebbero, invece, avere quello stesso valore ma con altri significati.
Avrei bisogno di una sorta di:
"UPDATE TABELLA_DISNEY SET = null WHERE [ID*] = " & ID
Per ora faccio come ho sempre fatto, lancio una query per ogni campo:
"UPDATE TABELLA_DISNEY SET ID_Pippo = null WHERE ID_Pippo = " & ID
....
"UPDATE TABELLA_DISNEY SET ID_nonnaPapera = null WHERE ID_nonnaPapera = " & ID
In questo caso però i campi coinvolti sono parecchi e il codice che uso per fare questa operazione risulta lunghetto e parecchio 'bruttino' a vedersi :(
Posso farci qualcosa?
vorrei sapere se esiste una qualche query per fare l'update solo su di un range di campi accomunati soltanto dal fatto che il loro nome inizia per "ID_".
In pratica ho una tabella con diversi campi contenenti i valori delle chiavi primarie di altre tabelle.
TABELLA_DISNEY
----------------
campo: campo_1
campo: campo_2
campo: campo_3
campo: id_pippo
campo: id_pluto
campo: id_paperino
campo: id_...
campo: id_...
campo: id_...
campo: id_nonnaPapera
Ovviamente uso quegli id per relazionare la tabella Disney a svariate tabelline 'figlio'.
Se cancello un record da una tabella 'figlio' vorrei che, come consuetudine, l'ID del record che ho cancellato sparisse da qualsiasi campo della tabella TABELLA_DISNEY a prescindere da quale sia il campo che la contenga ma a patto che il campo sia uno di quelli contenenti gli ID che servono per le relazioni e non uno degli altri che potrebbero, invece, avere quello stesso valore ma con altri significati.
Avrei bisogno di una sorta di:
"UPDATE TABELLA_DISNEY SET = null WHERE [ID*] = " & ID
Per ora faccio come ho sempre fatto, lancio una query per ogni campo:
"UPDATE TABELLA_DISNEY SET ID_Pippo = null WHERE ID_Pippo = " & ID
....
"UPDATE TABELLA_DISNEY SET ID_nonnaPapera = null WHERE ID_nonnaPapera = " & ID
In questo caso però i campi coinvolti sono parecchi e il codice che uso per fare questa operazione risulta lunghetto e parecchio 'bruttino' a vedersi :(
Posso farci qualcosa?