Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Aufbau einer Adressdatenbank

Ich kenne das US-amerikanische Postleitzahlen- und Gebietsaufteilungssystem nicht gut, aber ich nehme an, es ist dem deutschen etwas ähnlich.

  • Ein Staat hat viele Bezirke.
  • Ein Landkreis hat viele Städte.
  • Eine Stadt hat viele Postleitzahlen.

Daher würde ich das folgende Schema verwenden.

ZipCodes          CityZipCodes
------------      ----------------      Cities
ZipCode (PK) <─── ZipCode (PK)(FK)      -----------
                  City    (PK)(FK) ───> CityId (PK)
                                        Name
                                        County (FK) ───┐
                                                       │
                                                       │
                                     Counties          │
                                     -------------     │
              States                 CountyId (PK) <───┘
              -----------------      Name               
              StateId      (PK) <─── State    (FK)
              Name
              Abbreviation

Behoben für mehrere Städte pro Postleitzahl.