Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Phương pháp hay nhất / Tiêu chuẩn để lưu trữ Địa chỉ trong Cơ sở dữ liệu SQL

Đối với các địa chỉ quốc tế, hãy tham khảo Liên minh Bưu chính Thế giới của Bưu điện Cơ sở dữ liệu hệ thống địa chỉ .

Đối với các địa chỉ ở Hoa Kỳ, hãy tham khảo USPS Publication 28 "Tiêu chuẩn địa chỉ bưu điện" .

USPS muốn các thành phần địa chỉ chưa được đánh dấu sau đây được nối trên một dòng:

  • số nhà
  • định hướng (N , SE , v.v.)
  • đường phố
  • Hậu tố
  • (AVE , BLVD , v.v.)
  • postdirectional (SW , E , v.v.)
  • đơn vị (APT , STE , v.v.)
  • số căn hộ / căn hộ

Ví dụ. 102 N MAIN ST SE APT B

Nếu bạn giữ toàn bộ dòng địa chỉ dưới dạng một trường duy nhất trong cơ sở dữ liệu của mình, việc nhập và chỉnh sửa rất dễ dàng, nhưng tìm kiếm có thể khó hơn (ví dụ:trong trường hợp SOUTH EAST LANE là đường EAST như trong S EAST LN hay là LANE như trong SE LANE ST ?).

Nếu bạn giữ địa chỉ được phân tích cú pháp thành các trường riêng biệt, việc tìm kiếm các thành phần như tên đường hoặc căn hộ trở nên dễ dàng hơn, nhưng bạn phải nối mọi thứ lại với nhau để xuất ra, bạn cần Phần mềm CASS để phân tích cú pháp chính xác và các hộp PO, địa chỉ tuyến đường nông thôn và địa chỉ APO / FPO có các phân tích cú pháp đặc biệt.

Một vị trí thực có nhiều địa chỉ tại vị trí đó là một tòa nhà nhiều đơn vị, trong trường hợp này, các chữ cái / số sau các đơn vị như APTSTE chỉ định địa chỉ hoặc đó là Cơ quan nhận thư thương mại (ví dụ:cửa hàng UPS) và số hộp thư / hộp thư riêng được thêm vào (như 100 MAIN ST STE B PMB 102 ), hoặc đó là một doanh nghiệp có một điểm gửi USPS và thư được định tuyến sau khi gửi USPS (thường yêu cầu trường mailstop riêng mà công ty có thể cần nhưng USPS sẽ không muốn trên dòng địa chỉ).

Người liên hệ có nhiều địa chỉ thực thường là doanh nghiệp hoặc người có địa chỉ đường phố và hộp thư bưu điện. Lưu ý rằng thông thường mỗi địa chỉ có một mã ZIP khác nhau.

Điều khá điển hình là một giao dịch kinh doanh có thể có địa chỉ giao hàng và địa chỉ thanh toán (một lần nữa, với các mã ZIP khác nhau). Thông tin tôi giữ lại cho MỖI địa chỉ là:

    tiền tố tên
  • (DR , MS , v.v.)
  • tên và chữ viết tắt
  • họ
  • hậu tố tên (III , PHD , v.v.)
  • dừng thư
  • tên công ty
  • địa chỉ (chỉ một dòng cho mỗi Pub 28 ở Hoa Kỳ)
  • thành phố
  • bang / tỉnh
  • mã ZIP / mã bưu chính
  • quốc gia

Tôi thường in thư dừng lại ở đâu đó giữa tên của người đó và công ty vì quốc gia chứa tiểu bang / ZIP chứa thành phố chứa địa chỉ chứa công ty chứa địa chỉ dừng thư chứa người. Tôi sử dụng phần mềm CASS để xác thực và chuẩn hóa địa chỉ khi nhập hoặc chỉnh sửa.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sự cố khi tạo truy vấn MySQL trong Symfony có chứa JOIN và RAND ()

  2. SQLSTATE [HY000] [2002] php_network_getaddresses:getaddrinfo không thành công:Không xác định được tên hoặc dịch vụ

  3. Làm cách nào để tạo LEFT JOIN với truy vấn con SELECT bằng QueryBuilder trong Doctrine 2?

  4. MySQL giải thích sự hiểu biết về truy vấn

  5. Cách xoay bảng trong MySQL