sql >> Database >  >> RDS >> PostgreSQL

Waarom is het het beste om een ​​telefoonnummer op te slaan als een string versus een geheel getal?

Telefoonnummers zijn reeksen van cijfers, het zijn geen gehele getallen.

Denk bijvoorbeeld aan:

  • Het uitdrukken van een telefoonnummer in een ander basisstation zou het zinloos maken

  • Twee telefoonnummers bij elkaar optellen of vermenigvuldigen, of een wiskundige bewerking op een telefoonnummer, is zinloos. Het resultaat is geen ander telefoonnummer (behalve bij toeval)

  • Telefoonnummers zijn bedoeld om "zoals ze zijn" in een aangesloten apparaat in te voeren.

  • Telefoonnummers kunnen voorloopnullen hebben.

  • Manipulaties van telefoonnummers, zoals het toevoegen van een netnummer, zijn String-bewerkingen.

Door de stringversie van het telefoonnummer op te slaan, wordt dit duidelijk en eenduidig.

Geschiedenis:Op oude pulsgecodeerde kiessystemen werd de code voor elk cijfer in een telefoonnummer verzonden als hetzelfde aantal pulsen als het cijfer (of 10 pulsen voor "0"). Dat is misschien de reden waarom we nog steeds cijfers gebruiken om de delen van een telefoonnummer weer te geven. Zie http://en.wikipedia.org/wiki/Pulse_dialing



  1. Hoe SQLite-lengte() werkt

  2. Hoe voorloop- en volgspaties in MySQL te verwijderen

  3. SELECTEER AANTAL() versus mysql_num_rows();

  4. SQL Server 2017:Beschikbare functies op Linux