Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

on delete cascade

Estas en el tema de on delete cascade en el foro de Mysql en Foros del Web. Hola a todos tengo la siguiente pregunta: "on delete cascade" solo sirve en mysql??? o es una sentencia del sql estandar??? Si es parte del ...
  #1 (permalink)  
Antiguo 01/12/2010, 22:01
 
Fecha de Ingreso: diciembre-2008
Ubicación: Lima - Perú
Mensajes: 187
Antigüedad: 15 años, 11 meses
Puntos: 3
Pregunta on delete cascade

Hola a todos tengo la siguiente pregunta:

"on delete cascade" solo sirve en mysql??? o es una sentencia del sql estandar???

Si es parte del estandar de sql, ayúdenme a usarlo porque en el siguiente capitulo de la documentacion de mysql me pbligan a que mi tabla sea del tipo "innodb" ver capitulo

y eso me provoca un error pero si creo la tabla que no es innodb no funciona

Una pregunta más, donde puedo encontrar un manual del estandar sql, porque todos los manuales que encuentro estan contaminiados con sentencias de mysql o de otros motores yo quiero el manual de sql que es compatible en cualquier base de datos.

Espero su ayuda, gracias.
  #2 (permalink)  
Antiguo 02/12/2010, 03:33
Avatar de 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
Puntos: 2658
Respuesta: on delete cascade

Cita:
"on delete cascade" solo sirve en mysql??? o es una sentencia del sql estandar???
Es básicamente parte del estandar, pero tiene una sola exigencia: Sólo se puede implementar con motores que posean restricciones de clave foranea, es decir deben soportar FOREIGN KEY, ya que es allí donde sucede la casacada.
El problema aparece en MySQL cuando no usas tablas InnoDB simplemente porque el motor InnoDB es el único de los que usa MySQL que posee claves foráneas.
¿Se entiende?

Si te fijas en los demás DBMS, todos tienen esta cláusula, porque no usan motores de tablas que no posean esa restricción.


Cita:
Una pregunta más, donde puedo encontrar un manual del estandar sql, porque todos los manuales que encuentro estan contaminiados con sentencias de mysql o de otros motores yo quiero el manual de sql que es compatible en cualquier base de datos.
No vas a encontrar un manual estrictamente "de SQL", como lo defines, porque el SQL en ese caso no es un lenguaje sino un estandar ANSI. ANSI lo estableció en 1986 y fue repetidamente revisado y reformado.
El estadar contiene las estructuras básicas del lenguaje, pero no contiene todas las posibilidades, y tampoco establece cómo se lo implementa. Por eso los diferentes DBMS le agregan o le sacan cosas, pero sin modificar lo que el estandar pone.
Aún así, puedes encontrar manuales (universitarios sobre todo) donde está el modelo basico, pero no esperes mucho. Es muy simple y si has usado cualquier DBMS ya conoces las reglas basicas y sus estructuras.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 02/12/2010 a las 03:40
  #3 (permalink)  
Antiguo 02/12/2010, 13:07
 
Fecha de Ingreso: diciembre-2008
Ubicación: Lima - Perú
Mensajes: 187
Antigüedad: 15 años, 11 meses
Puntos: 3
Respuesta: on delete cascade

OK gracias tu respuesta, eso es lo que quería saber

Etiquetas: cascade, delete
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:35.