Ciao a tutti. Devo creare una piccola gestione di anagrafiche su un db SQLite con gestione delle versioni delle modifiche.

Nella struttura del db saranno presenti due campi nominati, per esempio, cod_anag e cod_vers.
all'inserimento devo copilare cod_anag con un valore numerico pari al valore massimo presente nella colonna aumentato di uno (query: SELECT MAX(cod_anag) as max FROM anagrafiche e cod_vers = 0;
Al momento dell'update, devo trasformare la query in un inserte, inserendo cod_anag uguale a quello che c'è già, mentre cod_vers aumentato di uno (query: SELECT MAX(cod_vers) as max FROM anagrafiche
Volendo al posto dell'update è possibile fare un nuovo insert, però devo controllare prima dell'operazione se l'anagrafica esiste già (il controllo è possibile eventualmente farlo controllando il valore del codice fiscale dell'anagrafica, il quale nella form di modifica blocco in modalità readonly).

Dato che in SQLite non esistono le stored procedure, posso fare questa operazione tramite i trigger? mi fate un esempio?

Grazie mille per le risposte