Ho una tabella (di prodotti) con i seguenti campi:

id
codice
descrizione
confezione
...
correlato1
correlato2
correlato3
correlato4
correlato5
correlato6


Nei campi correlati ci sono gli id di altri record (prodotti) della stessa tabella che sono "correlati" a quello corrente.
Quando un prodotto non ha prodotti correlati, i campi correlato1, correlato2,..., correlato6 hanno valore zero (0).

Il mio problema è questo: se cancello un prodotto, vorrei prima controllare se quel prodotto è presente come prodotto correlato in uno qualsiasi degli altri record di questa tabella e, nel caso in cui lo fosse, mettere il valore a 0.

Esempio.
Cancello il record con id=15
Però 15 potrebbe essere prodotto correlato1 per il record con id=5 e magari correlato4 per il record con id=12. Se cancello 15, nei record 5 e 12 saranno indicati dei prodotti che non esistono. Vorrei quindi, prima di cancellare id=15, impostare a 0 il campo correlato1 del record id= 5 e a 0 il campo correlato4 del record con id=12.

Spero di essermi spiegato...

Qualcuno ha qualche suggerimento?

Grazie!!!