Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/02/2013, 06:29
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: 16 años, 5 meses
Puntos: 2658
Respuesta: Backup y relaciones

El orden de DROP, TRUNCATE o DELETE de tablas con restricciones de FK es siempre inverso al orden de creación de las mismas.
Esto significa que si tienes X tablas que tienen FKs apuntando a Y tablas, las que tienen a su vez FKs apuntando a Z tablas, debes borrar primero las X, luego las Y y finalmente las Z. Tan "simple" como eso.
El problema es que en muchas ocasiones el usuario no ve la totalidad de las dependencias, y pretende borrar tablas que son FK en otras que no percibe. Y puede suceder también que en algún momento, con la base ya en producción, se crearan FKs adicionales que determinen dependencias circulares sin pretenderlo. En estos casos hay que hacer una revisión cuidadosa para ver si es necesario desactivar tales FKs o al menos la verificacion de las dependencias, antes de proceder a borrar.
No hay un método único. Depende del diseño de cada base.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)