Ver Mensaje Individual
  #3 (permalink)  
Antiguo 26/02/2008, 13:13
Avatar de cmarti
cmarti
 
Fecha de Ingreso: noviembre-2003
Ubicación: Buenos Aires - Argentina
Mensajes: 442
Antigüedad: 20 años, 6 meses
Puntos: 1
Re: Integridad Referencial en MySQl 5

Cita:
2. No existe, por definición, integridad referencial sin PK. Es parte del modelo (ver Theory & Fry).
NO, no dije PK sino FK (Forengein Key).

En todos los puntos estoy de acuerdo contigo pero lamentablemente no logro aún (perdón por lo duro) definir el tema es decir......... puedo o no administrar mediante código integridad referencial con tablas MyISAM?

Voy a extractar un texto de uno de los tantos manuales de MySQL versión 5: ..Si elige no utilizar integridad referencial, tenga en cuenta las siguientes consideraciones:
• Sin un chequeo por parte del servidor de integridad referencial
(intuyo que cuando se arman las tablas de entrada como InnoDB), la aplicación debe realizar este trabajo.
• Si ON DELETE es la única integridad referencial que necesita la aplicación, desde la versión 4.0 de MySQL Server puede usar comandos DELETE para borrar registros de distintas tablas con un
único comando. Consulte Sección 13.2.1, “Sintaxis de DELETE”.
• Una forma de suplir la falta de ON DELETE es añadir el comando DELETE apropiado a su aplicación cuando borre registros de una tabla que no tenga clave foránea. En la práctica, esto es tan rápido como usar una clave foránea, y más portable.


En fin, si no estoy equivocado, SI se puede aplicar integridad referencial independientemente si las tablas son MyISAM o InnoDB. La diferencia radicaría en que si son InnoDB uno se despreocupa de eliminar registros relacionados y solo le resta customizar los mensajes de error mientras que si se usan tablas MyISAM se está obligado a escribir más código y por ende, a tener mayor cuidado de no olvidar ningún control.

Estoy equivocado????
Gs.
__________________
When all else is lost the future still remains.