Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

AJBM

Duvida Desenho de uma base dados

Mensagens Recomendadas

AJBM

Boas!

Eu tenho de criar uma base dados para um site, onde vou armazenar informações sobre actores, realizadores e filmes.

A minha duvida é, se vale a pena criar duas tabelas distintas actor e realizador já que a informação a guardar em ambas é a mesma.

Editado por brunoais
Título melhorado (após falar com utilizador :))

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
HappyHippyHippo

se a informação é a mesma, então seria bom teres na mesma tabela, onde existiria um campo identificador do tipo de pessoa a que os dados se referem.

existem casos em que é bem ter isso separado, mas as razões deveriam ser muito fortes, e é um pouco complicado ...


IRC : sim, é algo que ainda existe >> #p@p

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
AJBM

ok.

Eu estou a usar o mysql Workblench e estou a criar a tabela Elenco, mas aparece me este erro

ERROR 1005: Can't create table 'alugameestefilme.elenco' (errno: 121)

SQL Statement:

CREATE  TABLE `alugameestefilme`.`Elenco` (
 `filmeID` INT NOT NULL ,
 `actor_realizadorID` INT NOT NULL ,
 PRIMARY KEY (`filmeID`, `actor_realizadorID`) ,
 INDEX `actor_realizadorID_idx` (`actor_realizadorID` ASC) ,
 INDEX `filmeID_idx` (`filmeID` ASC) ,
 CONSTRAINT `actor_realizadorID`
FOREIGN KEY (`actor_realizadorID` )
REFERENCES `alugameestefilme`.`actor_realizador` (`actor_realizadorID` )
ON DELETE NO ACTION
ON UPDATE NO ACTION,
 CONSTRAINT `filmeID`
FOREIGN KEY (`filmeID` )
REFERENCES `alugameestefilme`.`filme` (`filmeID` )
ON DELETE NO ACTION
ON UPDATE NO ACTION)

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
HappyHippyHippo

http://dev.mysql.com/doc/refman/5.1/en/create-table.html

{INDEX|KEY} [index_name] [index_type] (index_col_name,...) [index_option] ...

olha para o que tens :

INDEX `actor_realizadorID_idx` (`actor_realizadorID` ASC) ,
INDEX `filmeID_idx` (`filmeID` ASC) ,

o uso do ASC é errado


IRC : sim, é algo que ainda existe >> #p@p

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
AJBM

Não sou eu que estou a programar, o mysql é que esta a gerar o código, eu já tentei eliminar os index mas ele não deixa.

Diz que o index pertence a chave estrangeira e só me deixa eliminar, se eu remover a chave estrangeira

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.