W teorii każda unikatowa wartość pozwala dostać się do rekordu w bazie. To powiedziawszy, osobiście bym optował za dodaniem dodatkowego id (np AUTO_INCREMENT w MySQL i pochodnych). Jakoś tak bardziej elegancko, gdy za identyfikator służy… cóż, identyfikator.
Kiedyś też identyfikatory liczbowe były po prostu wydajniejsze, ale nie wiem, czy to wciąż jest prawda. Od czasu, gdy się bawiłem bazami, jednak trochę minęło.