telefoonnummer opslaan in database
Hmmm, tja... ik sla een telefoonnummer op in de database als een INT met een lengte van 10. Nu kom ik erachter dat als het tel.nr. begint met een of meerdere nullen hij die nullen niet in de database zet. Voorbeeld: 0209999999 wordt opgeslagen als 209999999. Hoe moet ik dit oplossen? Niet opslaan als INT maar als VARCHAR?
Omdat je niet gaat rekenen met het Telefoonnummer hoef je hem niet op te slaan als INT maar kan je hem gewoon opslaan als Varchar.
Mvg,
Hendrik
Dankjewel Hendrik. Ik zie nu overigens dat ik ook "zerofill" kan instellen. Dan blijft het wel een INT maar dan komen er "voorloop nullen" voor. Wat zal ik doen? Toch INT houden dan? (dacht namelijk dat dat minder ruimte in beslag nam in de database, maar ik weet het niet zeker)
Houd er rekening mee dat als je bijvoorbeeld je limit zet op 12 en je "slechts" 8 cijfers invult, hij er 4 nullen voor zet :-)
Chris, ik heb de lengte in de database ingesteld op 10. Het tel.nr. wordt alleen toegevoegd als het uit 10 cijfers bestaat (eventuele spaties / streepjes worden gestript). Kan ik dan wel een int met lengte 10 en zerofill gebruiken?
Niet rekenen met de data dan geen rekenkundige tabel attributen gebruiken zoals INT, FLOAT etc. Voor huisnummers, telefoonnummers, burgerservicenummers, rijbewijsnummers, paspoortnummers, BTW nummers, KvK nummers altijd VARCHAR gebruiken.
Gewijzigd op 03/01/2011 15:25:29 door John D
Hmmm, oke... ik dacht omdat het een getal is dat het dan beter was om INT te gebruiken omdat dat volgens mij minder ruimte in de database in beslag neemt. Maar ik zal er wel VARCHAR van maken dan :)
0000-000000
Of 06 nummers
06-00000000, dus varchar 10 is niet juist...
jawel hoor... ik strip spaties en streepjes eruit :)
Ozzie PHP op 03/01/2011 14:30:20:
Het tel.nr. wordt alleen toegevoegd als het uit 10 cijfers bestaat (eventuele spaties / streepjes worden gestript).
Oh, haha overheen gelezen.