MySQL - Llave Primaria varchar

 
Vista:
sin imagen de perfil
Val: 4
Ha aumentado su posición en 5 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

Llave Primaria varchar

Publicado por Paola (3 intervenciones) el 17/02/2020 19:34:51
Hola, mi problema es que tengo una llave primaria que es tipo varchar y no puedo conectarla con la foranea que es int, recibo este error: "Foreign key constraint is incorrectly formed"
Sin embargo cuando cambio la llave primaria a INT si funciona, alguien sabe como puedo solucionarlo? estas son mis tablas


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
CREATE TABLE IF NOT EXISTS concursos(
resolucion varchar(50) NOT NULL,
materia VARCHAR(50) NOT NULL,
curso VARCHAR(50) NOT NULL,
fecha varchar(15) NOT NULL,
PRIMARY KEY (resolucion)
);
 
 
CREATE TABLE IF NOT EXISTS postulaciones(
id_postulante INT(5) AUTO_INCREMENT NOT NULL,
documento INT(15) NOT NULL,
resolucion INT(15) NOT NULL,
PRIMARY KEY (id_postulante),
CONSTRAINT resolucion_fk FOREIGN KEY (resolucion) REFERENCES concursos(resolucion)
);
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 54
Ha aumentado 1 puesto en MySQL (en relación al último mes)
Gráfica de MySQL

Llave Primaria varchar

Publicado por elhabraque (21 intervenciones) el 18/02/2020 11:16:06
Las claves foráneas deben ser con del mismo tipo de variable, incluso del mismo CHARSET y COLLATE.
Si o si debes elegir uno de los formatos para la variable.
Además, te recomiendo que no utilices VARCHAR en la clave, usa CHAR (costumbres mías).
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar