Si tuviera que representar, por ejemplo, ubicaciones (por ejemplo, países, estados/provincias/regiones, ciudades, etc.) en una base de datos, ¿cómo lo haría de modo tal que sería más fácil consultar, escalar el máximo , etc.? Planeo usar esto para una aplicación que permitirá a los usuarios seleccionar múltiples ubicaciones y asociarlas a su perfil.¿Cómo diseñar DB con relaciones padre-hijo?
La solución que viene a la mente es la siguiente:
===========================
| Id | ParentId | Name |
===========================
| 1 | 0 | USA |
---------------------------
| 2 | 1 | Alabama |
---------------------------
Me pregunto si hay cualquier problema potencial con una solución de este tipo. Gracias.
Puede aplicar la integridad referencial en una auto unión. Solo tendrías que hacer una regla para las filas sin referencia de los padres, ni ellos mismos, ni un registro "Root" designado. –
No creo que conozca todos los diferentes tipos de artículos. Diferentes países dividen las secciones geográficas diferentes. Necesito tener un diseño que admita n niveles de jerarquía. – StackOverflowNewbie
@StackOverflowNewbie - Ya veo, entonces su diseño es bueno y tiene sentido. Pero, ¿le importaría explicar al infractor? No pude adivinar su comentario antes de publicar mi respuesta ... –