Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Alter table FK #1072 doesn't exist in table


andreamussap

Pergunta

Boa noite a todos.

Estou começando a estudar e estou tentando fazer pequenos exercicios.

Comecei fazendo seguinte:

CREATE TABLE PROJETOS (

CODIGO INT NOT NULL PRIMARY KEY,

NOME VARCHAR(20),

INICIO DATE NOT NULL,

TERMINO DATE NOT NULL

) ENGINE = InnoDB;

CREATE TABLE ARTEFATOS (

TIPO INT NOT NULL,

DURACAO INT NOT NULL

) ENGINE = InnoDB;

Agora quero incluir chave da tabela PROJETOS como uma FK na tabela ARTEFATOS, renomeando esse campo para PROJETO

ALTER TABLE ARTEFATOS ADD FOREIGN KEY (PROJETO) REFERENCES PROJETOS(CODIGO)

aí vem o erro: #1072 - Key column 'PROJETO' doesn't exist in table

Eu até troquei "PROJETO" por "CODIGO", apesar de que eu gostaria de renomear o campo codigo para projeto, mas mesmo quando uso "codigo" dá o mesmo erro. alguém por favor sabe me ajudar?

Obrigada, Andrea.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

CONSEGUI RESOLVER !

A tabela Artefatos tem que ser criada com um índice :

CREATE TABLE ARTEFATOS (

PROJETO INT,

INDEX INDEX_PROJETO(PROJETO),

DURACAO INT NOT NULL

) ENGINE = InnoDB;

Agora faz a FK :

ALTER TABLE ARTEFATOS ADD FOREIGN KEY(PROJETO) REFERENCES PROJETOS(CODIGO) ON DELETE SET NULL;

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,7k
×
×
  • Criar Novo...