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

AJBM

Duvida Desenho de uma base dados

Mensagens Recomendadas

AJBM    30
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


Link para a mensagem
Partilhar noutros sites
HappyHippyHippo    1140
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


Link para a mensagem
Partilhar noutros sites
AJBM    30
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


Link para a mensagem
Partilhar noutros sites
HappyHippyHippo    1140
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


Link para a mensagem
Partilhar noutros sites
AJBM    30
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


Link 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.