Ver Mensaje Individual
  #4 (permalink)  
Antiguo 28/11/2010, 10:01
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años, 1 mes
Puntos: 2658
Respuesta: Todos los datos para una dirección de domicilio

Cita:
Iniciado por Sergiorelativo Ver Mensaje
Hola a todos. Esto es algo que siempre he tenido en mente, ¿cuantos y cuales son todos los datos posibles para una dirección de domicilio?. Parece una tontería, pero a ver si alguien tiene los campos para cubrir todo tipo de direcciones domiciliares.
Por ejemplo:

- Tipo de vía [Avenida, Calle, Glorieta... (¿cuáles mas?)]
- Dirección
- Número de bloque
- Escalera
- Puerta
- País
- Provincia
- Ciudad
- Código Postal (CP)


¿Me falta alguno?. Muchas gracias y perdonad si os parece una tonteria
Silo que quieres es una única tabla que sea capaz de manejar todas las posibilidades que existan en una dirección, tendrás un diseño ineficiente y con muchos datos nulos, porque esa estructura tiene bajo nivel de ajuste a la realidad. Estás planteandote un diseño tal que abarque todo el universo posible de representaciones de direcciones, cosa que en la primera clase de Base de Datos I, todo profesor te dice que no sólo es imposible, sino que es innecesario... Porque no es razonable esperar que tomemos en consideración todas las alternativas, el sistema se puede volver infinito, así que debemos modelar aquellos objetos que se ajusten mejor a las necesidades del sistema que estamos analizando.
Hay problemas de implementación en tu idea:
Por un lado, terminarías con una tabla con campos inaplicables en la inmensa mayoría de los casos; conceptos tales como "Puerta", "Escalera", "Numero de bloque" sólo son aplicables a casos de categorías específicas de edificación, pero carecen de significación fuera de ciertas zonas y edificaciones de las ciudades.
Por otro lado, incluso en estructuras físicas distintas, tienes diferentes formas de expresar las direcciones según la región, por lo que podrías terminar creando superposición de dominios en diferentes campos, lo que puede traer problemas de consistencia.

Resumiendo: Lo mejor es plantear un esquema estandarizado de atributos y dejar todas las alternativas como parte de un campo de datos generales, tal como "Observaciones".

Un caso de dirección estandarizado, en Argentina es:
  • Nombre - calle (la denominación indica si es calle o avenida)
  • Numero
  • Piso (si es edificio)
  • Departamento (letra o numero, si no es vivienda unica)
  • Otros (si es en torre, monoblocks, barrio cerrado, etc)
  • Barrio
  • Ciudad
  • Codigo Postal
  • Departamento (o Partido)
  • Provincia (o Estado)
  • Pais.
En ocasiones y por cuestiones de logística se incluye:
  • Entre calle...
  • Y calle...
Ese tipo de datos permite planear los repartos más eficientemente.

Saludos
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)