Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rafael Candido

Erro Foreign key 1005

Recommended Posts


create table cd(
id int(11) not null auto_increment,
nome varchar(255) not null,
banda varchar(255) not null,
musicas varchar(255),
genero varchar(255),
preco varchar(255),
imagem varchar(255),
PRIMARY KEY(id)
)

create table genero(
id int(11) not null auto_increment,
genero varchar(255) not null,
banda varchar(255) not null,
PRIMARY KEY(id),
FOREIGN KEY (banda) REFERENCES cd(banda)
)

por que nao consigo criar a tabela genero?

eu sei que o erro está na chave estrangeira mas nao consigo entender o q tem de errado :/

podes me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

sei que o erro está na chave estrangeira mas nao consigo entender o q tem de errado :/

 

1 chave estrangeira referencia (ou "está ligada a") uma chave primária em outra tabela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

repetindo... 1 pouco mais explicitamente,,,

 

1 chave estrangeira tem que estar ligada a uma chave primária de outra tabela.

 

a outra(gênero) nao consigo criar -.-

não consegue cria-la exatamente por isso..

a tabela em si não tem nenhum problema; a chave estrangeira sim...

vc precisa relaciona-la à chave primaria da outra tabela... tente ai e qqer coisa retorne...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Antes de pensar a pk/fk voce deve pensar o relacionamento.

 

Um CD tem um genero , entao

 

CD terá uma coluna (fk) que aponta para a pk de GENERO.

 

Procure ler algum material sobre entidade relacionamento e banco de dados relacionais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

create table cd(
id int(11) not null auto_increment,
nome varchar(255) not null,
banda varchar(255) not null,
musicas varchar(255),
genero varchar(255),
preco varchar(255),
imagem varchar(255),
PRIMARY KEY(id)
)
create table genero(
genero varchar(255) not null,
banda varchar(255) not null,
PRIMARY KEY(genero),
CONSTRAINT fk_generoBanda FOREIGN KEY (banda)
REFERENCES cd(banda)


)

bom fiz assim, mas tmb nao está indo :/

as duas precisam ser primary key?

e se eu fizer banda virar unique key funcionaria ?

o erro que está dando agora é 1005

que quer dizer q ela é diferente da outra,

o q eu devo fazer para as duas serem semelhantes?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Genero teriaum id que seria pk.

 

Cd teria uma coluna id_genero fk de genero.id

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.