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

Erro "Can't create table (errno: 150 "Foreign key constraint is incorrectly formed")"


CriandoBits

Pergunta

Criei a tabela  "anamnese_micropigmentacao" e mais outras duas "pigmentos_utilizados" e "pigmentos". Na tabela "pigmentos_utilizados" criei duas chaves estrangeiras para armazenar os IDs. Ao criar as tabelas, é mostrada a mensagem de erro:

"Can't create table `aslashdesigner`.`pigmentos_utilizados` (errno: 150 "Foreign key constraint is incorrectly formed")"

CREATE TABLE anamnese_micropigmentacao(
    idinamnese INT PRIMARY KEY AUTO_INCREMENT,
    idcliente INT NOT NULL,
    tecnicaAplicada VARCHAR(15) NOT NULL,
    nivelSensibilidade VARCHAR(5) NOT NULL,
    tratamentoMedico ENUM('SIM', 'não'),
    obs_tratamento_medico VARCHAR(100),
    alergias ENUM('SIM', 'não'),
    obs_alergias VARCHAR(100),
    cirurgiaRecente ENUM('SIM', 'não'),
    obs_cirurgia_recente VARCHAR(100),
    marcaExpressaoFacial ENUM('SIM', 'não'),
    obs_marca_expressao_facial VARCHAR(100),
    tipoProcedimento VARCHAR(30) NOT NULL,
    diabetes ENUM('SIM', 'não'),
    obs_diabetes VARCHAR(100),
    agulhaUtilizada VARCHAR(15) NOT NULL,
    idpigmento INT NOT NULL,
    cicatrizFacial ENUM('SIM', 'não'),
    obs_cicatriz_facial VARCHAR(100),
    gestante_lactante VARCHAR(10),
    hipo_hipertensao_arterial VARCHAR(15),
    herpes_labial ENUM('SIM', 'não'),
    problemas_cicatrizacao_ou_queloide ENUM('SIM', 'não'),
    tratamento_acido ENUM('SIM', 'não'),
    obs_tratamento_acido VARCHAR(100),
    anestesico ENUM('SIM', 'não'),
    obs_anestesico VARCHAR(100),
    marcapasso ENUM('SIM', 'não'),
    assinatura longblob NOT NULL,
    obs_adicionais VARCHAR(100)
 ) ENGINE = innodb;

 CREATE TABLE pigmentos_utilizados(
    id_pigmento INT NOT NULL,
    id_anamnese INT NOT NULL,
    FOREIGN KEY(id_pigmento) REFERENCES pigmentos(idpigmento),
    FOREIGN KEY(id_anamnese) REFERENCES anamnese_micropigmentacao(idanamnese)
 ) ENGINE = innodb;

 CREATE TABLE pigmentos(
    idpigmento INT PRIMARY KEY AUTO_INCREMENT,
    cor VARCHAR(30) NOT NULL,
    marca VARCHAR(30) NOT NULL
 ) ENGINE = innodb;

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

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