Att lagra det ursprungligen angivna användarnamnet och en kanonisk version (gemener för din app) är helt rimligt. Se bara till att det kanoniska fältet uppdateras i din modell närhelst användarnamnet ställs in, och kontrollera om det finns överträdelser av begränsningar via det kanoniska fältets unika index.
Ett annat scenario där den här lösningen (original och kanoniskt fält) är meningsfull är artiklar, där samma titel kan återanvändas men snigeln (för webbadresser) måste vara unik.