Este foro ya no está activo, así que no puedes publicar nuevas preguntas ni responder a las preguntas existentes.

Relaciones Base de datos

14 de febrero de 2014

Hola, tengo dudas con las relaciones en las bases de datos. No sé si ponerlas o no, a la hora de hacer copias y restaurarlas es un coñazo el problema que dan, ya que tienes que ordenar las insert. Al igual pasa con el problema de si puse restrict en el delete, y en el futuro cambia esto o me equivoque y debo cambiarlo, no hay manera de hacerlo fácilmente.

Fijándome en CMS veo que nunca las hacen, pero claro me enseñaron a tener las relaciones pero ya no sé si son más ventajas que desventajas.

Un saludo


Respuestas

#1

Si hablamos del desarrollo de aplicaciones profesionales, entonces no hay ninguna duda sobre la respuesta: siempre hay que utilizar las relaciones en las tablas de la base de datos. Tienes razón en que cuesta más trabajo, pero a la larga compensa. Si no utilizas relaciones, puedes acabar con pedidos no relacionados con clientes, artículos duplicados en tu inventario y muchos más problemas que te pueden costar dinero y mucho tiempo solucionarlos.

No obstante, en algunas situaciones es muy recomendable desactivar momentáneamente las relaciones entre tablas. Cuando utilizas por ejemplo el comando mysqldump para volcar toda la información de la base de datos, MySQL desactiva las relaciones para que luego al restaurar los datos no te vuelvas loco. Este es el comentario que se puede ver al principio del archivo .sql que genera el comando mysqldump:

/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */

@javiereguiluz

17 febrero 2014, 20:43
#2

Vaya la verdad que eso lo suelo quitar de los backup ya que no sabia para que era o si me modificaría algo jaja.

Muchas gracias!!! lo probaré.

@AlbertoVioque

18 febrero 2014, 17:32