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

CreaciÓn De Relaciones....

Estas en el tema de CreaciÓn De Relaciones.... en el foro de Bases de Datos General en Foros del Web. ALTER TABLE TABLA1 ADD CONSTRAINT C_GxC_E FOREIGN KEY ( Id_Cliente ) REFERENCES TABLA2( CIF ) ON DELETE { CASCADE } ON UPDATE { CASCADE } ...
  #1 (permalink)  
Antiguo 12/08/2004, 10:48
 
Fecha de Ingreso: mayo-2004
Mensajes: 89
Antigüedad: 20 años
Puntos: 0
CreaciÓn De Relaciones....

ALTER TABLE TABLA1 ADD CONSTRAINT C_GxC_E FOREIGN KEY ( Id_Cliente ) REFERENCES TABLA2( CIF ) ON DELETE { CASCADE } ON UPDATE { CASCADE } <- esta sintáxis es la correcta en mysql?

me da un error d sintáxis... y no entiendo por qué.

Un saludo ;)
  #2 (permalink)  
Antiguo 12/08/2004, 11:26
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 2 meses
Puntos: 45
hola r01010010
al parecer esta correcto, ¿cual es el mesanje de erreor que te da?
aqui tienes mas informacion de como crear relaciones:
http://dev.mysql.com/doc/mysql/en/In...nstraints.html
recuerda las relaciones solo se pueden crear en tablas de tipo InnoDB

Saludos!
  #3 (permalink)  
Antiguo 12/08/2004, 14:40
 
Fecha de Ingreso: mayo-2004
Mensajes: 89
Antigüedad: 20 años
Puntos: 0
..no tengo innodb

eske administro la db con phpmyadmin y resulta que en tipo de tablas no me aparece al crear una tabla el tipo innodb , asique dejo el tipo por defecto....
hablé con el proveedor y no me han hecho nada.... no se ke pasa :(
  #4 (permalink)  
Antiguo 12/08/2004, 14:44
 
Fecha de Ingreso: mayo-2004
Mensajes: 89
Antigüedad: 20 años
Puntos: 0
Por cierto..

La consulta anterior sería para crear una foránea, y entonces los registros eliminados y modificos de la tabla ke kontiene la primary key harán que se borren y actualicen a su vez los de la tabla del foreign key....
no?
ahora, tengo que crear tambien una constraint primary key que relacione la tabla padre con la hija?, y si también añado las clausulas on delete cascade y on update cascade... el efecto será exactamente el mismo que en el primer caso?.. es decir, al borrar un registro por ejemplo de la primary/padre se eliminarían automaticamente sus hijos en la hija/foreign, y si se eliminase un hijo de la tabla que contiene la foreign.. la el registro padre no sufriría ninguna alteración...

Bueno a ver si me he explicado...
Muchas gracias por responder, un besín ;)
  #5 (permalink)  
Antiguo 12/08/2004, 15:35
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 2 meses
Puntos: 45
r01010010. todo eso que deseas hacer solo se puede hacer con tablas tipo InnoDB, el tipo de tabla predetreminada en Mysql es MyISAM, y con esa no se puede, tampoco en tablas tipo Merge, Berkeley, ISAM, etc.

Saludos
  #6 (permalink)  
Antiguo 12/08/2004, 16:07
 
Fecha de Ingreso: mayo-2004
Mensajes: 89
Antigüedad: 20 años
Puntos: 0
De acuerdo ok muchisimas gracias veré ké puedo hacer :/

.................................................. ..........................
  #7 (permalink)  
Antiguo 13/08/2004, 02:00
 
Fecha de Ingreso: mayo-2004
Mensajes: 89
Antigüedad: 20 años
Puntos: 0
la versión de mysql que utilizo es la 3.23.58-4 .. debería tener innodbs , no es así?
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 18:14.