0
While running the script below occurs the error:
Cannot add Foreign key Constraint
when creating the last two tables.
create database Cinema;
use Cinema;
create table Filme (
id_filmes int primary key auto_increment not null,
nome_BR varchar (45) not null,
nome_EN varchar (45) not null,
anoLanccamento int not null,
sinopse varchar (45) not null,
fk_id_diretor int,
fk_id_genero int,
constraint foreign key (fk_id_diretor) references diretor (id_diretor),
constraint foreign key (fk_id_genero) references genero (id_genero)
)engine = InnoDB;
create table Funcionario (
id_funcionario int primary key auto_increment,
nome varchar (45) not null,
carteiraTrabalho int not null,
dataContratacao date not null,
salario float not null
)engine = InnoDB;
create table diretor (
id_diretor int primary key auto_increment,
nome varchar (45) not null
)engine = InnoDB;
create table genero (
id_genero int primary key auto_increment,
nome varchar (45) not null
)engine = InnoDB;
create table funcao (
id_funcao int primary key auto_increment,
nome varchar (45) not null
)engine = InnoDB;
create table horario (
id_horario int primary key auto_increment,
hora time not null
)engine = InnoDB;
create table sala (
id_sala int primary key auto_increment,
nome varchar (45) not null,
capacidade int
)engine = InnoDB;
create table premiacao (
id_premiacao int primary key auto_increment,
nome varchar (45) not null,
ano int
)engine = InnoDB;
create table horario_trabalho_funcionario(
fk_id_horario int,
fk_id_funcionario int,
fk_id_funcao int ,
constraint foreign key (fk_id_horario) references horario (id_horario),
constraint foreign key (fk_id_funcionario) references funcionario (id_funcionario),
constraint foreign key (fk_id_funcao) references funcao (id_funcao)
) engine = InnoDB;
create table filmes_exibido_sala (
fk_id_filmes int,
fk_id_sala int,
fk_id_horario int,
constraint foreign key (fk_id_filmes) references filme (id_filme),
constraint foreign key (fk_id_sala) references sala (id_sala),
constraint foreign key (fk_id_horario) references horario (id_horario)
)engine = InnoDB ;
create table filmes_has_premiacao (
fk_id_filmes int primary key auto_increment,
fk_id_premiacao int,
ganhouBOOL varchar (45),
constraint foreign key (fk_id_filmes) references filme (id_filme),
constraint foreign key (fk_id_premiacao) references premiacao (id_premiacao)
)engine = InnoDB;
try to specify more your problem and ident the code so that it is easier for the community to understand and so try to help you =)
– Um Programador