Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Error Code: 1072

E aí, pessoal! Criei as tabelas como propostas na aula:

CREATE schema CLUBE_DO_LIVRO;
CREATE TABLE LIVROS (
ID_LIVRO INT NOT NULL,
NOME_LIVRO VARCHAR(100) NOT NULL,
AUTORIA VARCHAR(100) NOT NULL,
EDITORA VARCHAR(100) NOT NULL,
CATERGORIA VARCHAR(100) NOT NULL,
PRECO DECIMAL(5,2) NOT NULL,

PRIMARY KEY (ID_LIVRO)
);
CREATE TABLE VENDAS(
ID_PEDIDO INT NOT NULL,
QTD_VENDIDA INT NOT NULL,
DATA_VENDA DATE NOT NULL,

PRIMARY KEY (ID_PEDIDO)
);
CREATE TABLE VENDEDORES(
ID_VENDEDOR INT NOT NULL,
NOME_VENDEDOR VARCHAR(50) NOT NULL,

PRIMARY KEY (ID_VENDEDOR)
);
CREATE TABLE ESTOQUE(
QTD_ESTOQUE INT NOT NULL
)

Depois tentando alterar a tabela estoque para inserir a chave estrangeira:

ALTER TABLE ESTOQUE ADD CONSTRAINT FK_ESTOQUE_LIVROS
FOREIGN KEY (ID_LIVRO)
REFERENCES livros (ID_LIVRO)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

Mas retorna um erro: "Error Code: 1072. Key column 'ID_LIVRO' doesn't exist in table"

Confesso que não consigo entender a razão para esse erro.

2 respostas
solução!

Olá, Damodara, tudo bem?

No momento de criar a tabela de estoque, você acabou não criando o campo ID_LIVRO, por este motivo o erro é retornado no momento de criar a chave estrangeira.

  • Seu código:
CREATE TABLE ESTOQUE(
QTD_ESTOQUE INT NOT NULL
)
  • Da instrutora:
CREATE TABLE ESTOQUE (
    ID_LIVRO INT NOT NULL,
    QTD_ESTOQUE INT NOT NULL,
 PRIMARY KEY (ID_LIVRO)
);

Espero ter ajudado e bons estudos!

Olá Damodara,

Cheque o campo categoria também, você acrescentou o R no meio da palavra (CATERGORIA VARCHAR(100) NOT NULL,)!

Abraço.