Fa parte della normale gestione di un applicativo.

Non serve analizzare la struttura del DB, la conosci già!
Invece devi tenere una tabella che tiene conto della versione del database che in genere può essere allineata a quella dell'applicazione

Poi devi creare un programma (una sorta di Updater) che fa esclusivamente solo l'aggiornamento dell'applicazione , database incluso.
Questo programma deve essere necessariamente distribuito ed eseguito tramite un setup, altrimenti non hai garanzia che funzioni su ogni versione di Windows.

Infatti, da Vista in avanti solo i setup (creati con appositi Installer) hanno i permessi di scrittura nelle cartelle di sistema (Programmi, System32, ...).

Ovviamente, dovrai fare molti TEST su macchine virtuali coi vari S.O. fino a che non hai affinato le procedure 'ad hoc'.

Infine, puoi intervenire dal cliente anche da remoto con appositi programmi.
Personalmente uso TeamViewer (TV) che trovo davvero pratico ed efficiente; posso addirittura connettermi ad un cliente via browser anche da un computer che non è il mio (avendo ovviamente la licenza).
Addirittura posso connettermi con il browser al mio computer dell'ufficio e da lì connettermi ad un cliente potendo gestire entrambi!!!

La licenza di TV costicchia un po' (500€) ma è per sempre, quindi se il cliente vuole assistenza diretta ed immediata gli faccio pagare un quota annua (d'altronde lui risparmia un sacco di soldi non dovendo pagare la trasferta) e non deve aspettare giorni per l'intervento.