Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Welcher ist der beste Datentyp für die Telefonnummer in MySQL und wie sollte die Java-Typzuordnung dafür aussehen?

Strings &VARCHAR.

  • Versuchen Sie nicht, Telefonnummern als tatsächliche Nummern zu speichern. es wird die Formatierung ruinieren, entfernen Sie das vorangestellte 0 s und andere unerwünschte Dinge.

  • Sie können, wenn Sie möchten, Benutzereingaben auf nur numerische Werte beschränken, aber selbst in diesem Fall behalten Sie Ihre gesicherten persistenten Daten als Zeichen/Strings und nicht als Zahlen bei.

  • Achten Sie auf die weite Welt und die unterschiedlichen Zahlenlängen und -formatierungen, bevor Sie versuchen, Längenbeschränkungen, Validierungen oder Masken (z. B. XXX-XXXX-XX) zu implementieren.

  • Nicht numerische Zeichen können in Telefonnummern gültig sein. Ein Paradebeispiel ist + als Ersatz für 00 am Anfang einer internationalen Nummer.

Bearbeitet aus Konversation in Kommentaren:

  • Es ist einer der größten UI-Fehler, dass Telefonnummern irgendetwas mit Zahlen zu tun haben. Es ist viel besser, sie wie Adressen zu betrachten und zu behandeln, es ist näher an dem, was sie tatsächlich sind und darstellen, als "Telefonnummern".