PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Genera SQL per aggiornare la chiave primaria

Il modo più semplice per gestire le modifiche alla chiave primaria - di gran lunga - è ALTER i tuoi vincoli di chiave esterna di riferimento devono essere ON UPDATE CASCADE .

Sei quindi libero di aggiornare i valori della chiave primaria e le modifiche verranno applicate a cascata alle tabelle figlio. Può essere un processo molto lento a causa di tutti gli I/O casuali, ma funzionerà.

È necessario fare attenzione a non violare i vincoli di univocità sulla colonna della chiave primaria durante il processo.

Un modo più complicato ma più veloce è aggiungere un nuovo UNIQUE colonna per la nuova PK, compilarla, aggiungere nuove colonne a tutte le tabelle di riferimento che puntano alla nuova PK, eliminare i vecchi vincoli e colonne FK, quindi infine eliminare la vecchia PK.