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

Relaciones en MySQL???

Estas en el tema de Relaciones en MySQL??? en el foro de Bases de Datos General en Foros del Web. Buenas Tardes!!! Se que no es foro correcto, pero por la experiencia que la mayoria tiene con MySQL me atrevo a consultarlo aca. Como relaciono ...
  #1 (permalink)  
Antiguo 04/09/2003, 16:22
 
Fecha de Ingreso: enero-2003
Mensajes: 286
Antigüedad: 21 años, 3 meses
Puntos: 0
Relaciones en MySQL???

Buenas Tardes!!!

Se que no es foro correcto, pero por la experiencia que la mayoria tiene con MySQL me atrevo a consultarlo aca.

Como relaciono una tabla con otra en MySQL, lo que comunmente se hace con
constraint fk_n_a foreign key(cta_cliente) references cliente (cta_cliente).
Se hace de igual manera o se debe hacer algo mas.

Saludos
Reckba
  #2 (permalink)  
Antiguo 04/09/2003, 16:30
Avatar de McManaman  
Fecha de Ingreso: agosto-2003
Ubicación: Ecuador - Guayaquil
Mensajes: 119
Antigüedad: 20 años, 8 meses
Puntos: 0
que version de mysql tienes?
__________________
...Hay unos que saben TODO de nada y otros que saben NADA de TODO... think about it
  #3 (permalink)  
Antiguo 04/09/2003, 16:50
 
Fecha de Ingreso: enero-2003
Mensajes: 286
Antigüedad: 21 años, 3 meses
Puntos: 0
me parece que es la version 4, en todo caso es la que trae el paquete appser v 2.0.0

Saludos
Reckba
  #4 (permalink)  
Antiguo 05/09/2003, 08:52
Avatar de Linterns
Colaborador
 
Fecha de Ingreso: diciembre-2001
Mensajes: 2.799
Antigüedad: 22 años, 4 meses
Puntos: 11
Aqui esta como se realiza

http://www.mysql.com/doc/en/InnoDB_f...nstraints.html

Suerte
__________________
Bien se puede recibir una puñalada sin adulación,
pero rara vez se recibe una adulación sin puñalada
** ***
  #5 (permalink)  
Antiguo 06/09/2003, 08:25
Avatar de Slash  
Fecha de Ingreso: agosto-2003
Mensajes: 51
Antigüedad: 20 años, 8 meses
Puntos: 0
Debes utilizar tablas innodb

Hola

Primero que todo para que puedas tener relaciones entre tablas tienes que configurar el my.ini que es el archivo de configuracion de mysql para que trabaje con tablas innodb.

luego creas la tabla padre y como el campo al que vas a referencia a hacer refencia es un pk automaticamente se crea el indice, luego creas la tabla hija y si el campo que va a referencia al campo de la tabla padre no es una pk, tines que crearle un indice a este campo y luego refrenciarlo con el padre.

Esta es la ceacion de la tabla padre

CREATE TABLE `cliente` (
`cta_cliente` varchar(30) NOT NULL default '',
PRIMARY KEY (`cta_cliente`)
) TYPE=InnoDB;


Esta es la creacion de la tabla hija si el campo es pk

CREATE TABLE `cliente_hija` (
`cta_cliente` varchar(30) NOT NULL default '',
PRIMARY KEY (`cta_cliente`),
FOREIGN KEY (`cta_cliente`) REFERENCES `prueba.cliente` (`cta_cliente`)
) TYPE=InnoDB;


Esta es la creacion de la tabla hija si el campo no es pk

CREATE TABLE `cliente_hija` (
`nro` int(3) NOT NULL auto_increment,
`cta_cliente` varchar(30) default NULL,
PRIMARY KEY (`nro`),
KEY `cta_cliente` (`cta_cliente`),
FOREIGN KEY (`cta_cliente`) REFERENCES `cliente` (`cta_cliente`)
) TYPE=InnoDB;

Espero que te sea de ayuda
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 05:39.