Problems adding foreign key in MySQL

0

I'm having trouble setting the anoAuto attribute of the business table as a foreign key to automovéis.ano. MySQL always says "ERROR CODE: 1215. Can not add foreign key constraint".

create table automoveis (
codigo int,
ano int,
fabricante varchar(20),
modelo varchar(20),
pais varchar(20),
precoTabela decimal(8, 2),
primary key (codigo, ano));

create table revendedoras (
cgc int,
nome varchar(30),
proprietário varchar(30),
cidade varchar(30),
estado varchar(30),
primary key(cgc));

create table consumidores (
identidade char(7),
nome varchar(30),
sobrenome varchar(30),
primary key(identidade));

create table negocios (
comprador char(7),
revenda int,
codAuto int,
anoAuto int,
data_compra date,
preco decimal(8,2),
primary key (comprador, revenda, codAuto, anoAuto),
foreign key (comprador) references consumidores(identidade),
foreign key (revenda) references revendedoras(cgc),
foreign key (codAuto) references automoveis(codigo),
foreign key (anoAuto) references automoveis(ano));
    
asked by anonymous 23.09.2017 / 23:19

1 answer

0

Have you tried adding a constraint ?

Constraints are basically rules that you place in a table, such as Primary Key , Unique , Foreign Key , etc.
The foreign key syntax would look something like this:

alter table tabela add constraint nome_da_constraint foreign key(nome_do_campo)
references tabela_estrangeira(nome_do_campo_da_tabela_estrangeira);

More information:

  

Constraints / p>

    
24.09.2017 / 01:22