¿No entiendo por qué este código está arrojando un error?
Estoy ejecutando el siguiente código en MySQL Workbench:
CREATE TABLE beer_type ( -- crear tabla de cerveza
type_id INTEGER NOT NULL PRIMARY KEY, -- PK "type_id"
beer_name VARCHAR(30) NOT NULL,
beer_type VARCHAR(30) NOT NULL,
beer_id INTEGER NOT NULL,
FOREIGN KEY (beer_id) REFERENCES beer (beer_id));
Estoy obteniendo:
0 5 21:27:10 CREATE TABLE beer_type ( -- crear tabla de cerveza Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 0.000 sec
Soy nuevo en SQL, por lo que esto me resulta un poco confuso y mi profesor no es de gran ayuda…
¿Alguien podría ayudarme por favor? ¡Sería muy apreciado!
davy.ai
Parece que falta la tabla
beer
a la que está intentando hacer referencia en su clave foránea. Asegúrese de que la tablabeer
existe y que tiene una columna de clave principal llamadabeer_id
. Además, necesita especificar el tipo de datos para la columnabeer_id
en su tablabeer_type
.Aquí hay una versión revisada de su código:
Este código crea dos tablas:
beer_type
ybeer
. La tablabeer_type
tiene una restricción de clave foránea que hace referencia a la columna de clave primariabeer_id
de la tablabeer
.¡Espero que esto ayude! Hágame saber si tiene más preguntas.