Quote Originariamente inviata da nman Visualizza il messaggio
io valuterei anche la 3° strada che non hai ancora citato.
-- La prima è lo Script o Trigger
-- La seconda è lo script o Trigger + qualcosa che ti lancia un errore


la terza invece
Nella tabella utenti elimini il campo "Abilitato"
Nella tabella utenti_bannati aggiungi un campo di "RIAbilitato" ( Chiamiamolo RAB )
Ti fai una vista fra la tabella utenti e utenti_bannati e escludi gli utenti che hanno un ban privo del RAB


Mi sono spiegato male ma penso che si capisce


certamente è più lento perche deve elaborare .....

ma
- non rischi di sbagliare
- non hai script/trigger
- ti resta storia dei vecchi ban anche se "perdonati" con RAB

.
Considera che utenti.Abilitato mi serve a prescindere perchè ci sono diversi stati che gli utenti possono assumere (ad esempio un utente che ha ancora in sospeso la verifica mail).

Ad ogni modo non è questo il punto, perchè la storia del creare una colonna RAB in utenti_bannati mi pare un po' macchinosa inoltre inzozzo il database di informazioni che rischiano di diventare obsolete