sql >> Database >  >> RDS >> Mysql

Best Practice / Standard voor het opslaan van een adres in een SQL-database

Raadpleeg voor internationale adressen de Universal Postal Union 's Postal Adresseringssystemen database .

Raadpleeg voor Amerikaanse adressen USPS-publicatie 28 "Postal Addressing Standards" .

De USPS wil dat de volgende adrescomponenten zonder interpunctie op één regel worden samengevoegd:

  • huisnummer
  • predirectioneel (N , SE , enz.)
  • straat
  • achtervoegsel (AVE , BLVD , enz.)
  • postdirectioneel (SW , E , enz.)
  • eenheid (APT , STE , enz.)
  • nummer appartement/suite

bijv. 102 N MAIN ST SE APT B

Als u de hele adresregel als een enkel veld in uw database houdt, is invoer en bewerken eenvoudig, maar zoeken kan moeilijker zijn (bijv. in het geval SOUTH EAST LANE is de straat EAST zoals in S EAST LN of is het LANE zoals in SE LANE ST ?).

Als u het adres in afzonderlijke velden ontleedt, wordt het zoeken naar componenten zoals straatnaam of appartementen eenvoudiger, maar u moet alles bij elkaar voegen voor uitvoer, u hebt CASS-software om correct te ontleden, en postbussen, adressen voor landelijke routes en APO/FPO-adressen hebben speciale parseringen.

Een fysieke locatie met meerdere adressen op die locatie is ofwel een gebouw met meerdere units, in welk geval letters/cijfers na units zoals APT en STE geef het adres aan, of het is een Commercial Mail Receiving Agency (bijv. UPS-winkel) en er wordt een maildrop/private mailboxnummer toegevoegd (zoals 100 MAIN ST STE B PMB 102 ), of het is een bedrijf met één USPS-bezorgpunt en post wordt gerouteerd na USPS-bezorging (waarvoor meestal een apart mailstop-veld vereist is dat het bedrijf misschien nodig heeft, maar de USPS wil niet op de adresregel).

Een contactpersoon met meer dan één fysiek adres is meestal een bedrijf of persoon met een huisadres en een postbus. Houd er rekening mee dat het gebruikelijk is dat elk adres een andere postcode heeft.

Het is vrij typisch dat een zakelijke transactie een verzendadres en een factuuradres kan hebben (opnieuw, met verschillende postcodes). De informatie die ik bewaar voor ELK adres is:

  • naamvoorvoegsel (DR , MS , enz.)
  • voornaam en voorletter
  • achternaam
  • naamachtervoegsel (III , PHD , enz.)
  • mailstop
  • bedrijfsnaam
  • adres (slechts één regel per Pub 28 voor de VS)
  • stad
  • staat/provincie
  • ZIP/postcode
  • land

Ik druk meestal poststops ergens tussen de naam van de persoon en het bedrijf af, omdat het land de staat/postcode bevat die de stad bevat die het adres bevat dat het bedrijf bevat dat de poststop bevat die de persoon bevat. Ik gebruik CASS-software om adressen te valideren en te standaardiseren wanneer ze worden ingevoerd of bewerkt.



  1. Hoe de LOAD DATA INFILE-instructie gebruiken wanneer het bestand zich op een andere locatie bevindt?

  2. Hoe maak je een extensie niet verplaatsbaar?

  3. CodeIgniter-configuratietekenset en UTF-8-ondersteuning

  4. Een subtekenreeks extraheren uit een tekenreeks in Oracle/SQLite