[eluser]JamesTaylor[/eluser]
I would do it by user_id - the user_id would be the primary key on your users table, set to auto-incrementing.
You may never want to let the user see that they have user_id, from their persective you could always use their unique username when displaying on screen but it'll be easier / cleaner for you to work with an id value for coding purposes given the experience i have (which is by no means as much as some on here!)