CriandoBits Postado Março 5, 2021 Denunciar Share Postado Março 5, 2021 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; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Bruno Alves Postado Março 8, 2021 Denunciar Share Postado Março 8, 2021 Aparentemente houve um erro de digitação. FOREIGN KEY(id_anamnese) REFERENCES anamnese_micropigmentacao(idanamnese) Na tabela anamnese_micropigmentacao o nome da coluna é : idinamnese Espero ter ajudado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
CriandoBits
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.