Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/09/2012, 12:33
eybel
 
Fecha de Ingreso: marzo-2007
Mensajes: 782
Antigüedad: 17 años, 8 meses
Puntos: 16
Como crear 2 tablas con foreign key. Conectado campos que no son PRIMARY KEY

Tengo este codigo pero tengo problemas con el FOREIGN KEY. Tengo una tabla "CLIENTES" y otra "CUENTAS"

Tengo que ingresar clientes en esta tabla "CLIENTES" (1 record por persona) y cada cliente puede tener multiples records de cuentas "CUENTAS" puede tener 0 o 100 cuentas cada cliente por dar un ejemplo..

Este codigo es el que cree, pero algo estoy haciendo mal me da errores de FOREIGN KEY..

Puedo tener 2 tablas, con 2 PRIMARY KEYS y en la tabla CLIENTES tener otro campo como FOREIGN KEY que estaria conectado a la seguna tabla?

ASI:


create table clientes (
id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY (id),

clientes_id VARCHAR (100),
name VARCHAR (50),
lastname VARCHAR (50),
bdate DATE,
sex CHAR (1),
email VARCHAR (100),
phone INT (20),
street VARCHAR (100),
apt CHAR(7),
city VARCHAR (50),
state CHAR (2),
zipcode SMALLINT (10),
ethnicity CHAR (20),
FOREIGN KEY (clientes_id) REFERENCES cuentas (clientes_id)
);

create table cuentas (
cuentas_id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY (cuentas_id),

clientes_id VARCHAR (100) ,
company VARCHAR (100),
aname VARCHAR (100),
phone VARCHAR (100),
email VARCHAR (100),
debt INT,
status VARCHAR (100)
);


Que esta mal aca? Estoy conectado los campos "clientes_id" que no son PRIMARY KEY como FOREIGN KEYS