gpt4 book ai didi

MySQL 外键到 auto_increment 字段

转载 作者:行者123 更新时间:2023-11-29 10:49:32 25 4
gpt4 key购买 nike

我正在尝试创建此表:

CREATE TABLE INFORMEPERICIAL (
INFORME_NO INT(3),
PRIMARY KEY (INFORME_NO),
DATEEMISIO DATE NOT NULL,
IMPORTCOBERT DECIMAL(8,2),
PERIT_NO INT(3) NOT NULL,
INFORME VARCHAR(200),
RESULTATPERITATGE VARCHAR(20),
CONSTRAINT RESULTATPERITATGE_CK CHECK (RESULTATPERITATGE IN ('COBERT_TOTAL','COBERT_PARCIAL','SENSE_COBERTURA','REPARAT')),
ESTATINFORME VARCHAR(20),
CONSTRAINT ESTATINFORME_CK CHECK ESTATINFORME IN ('PENDENT','TANCAT'),
CONSTRAINT INFORMEPERICIAL_FK_PERIT FOREIGN KEY (PERIT_NO) REFERENCES PERIT (NUMERO),
CONSTRAINT INFORMEPERICIAL_CK_INFORME_NO_NUM_POSITIU CHECK (INFORME_NO > 0)
);

但是,我在使用外键时遇到了麻烦。

这是我的格式正确的“Perit”表”:

CREATE TABLE PERIT (
COGNOM1 VARCHAR(30) NOT NULL,
COGNOM2 VARCHAR(30) NOT NULL,
DATANAIX DATE NOT NULL,
NOM VARCHAR(30) NOT NULL,
NIF VARCHAR(10) NOT NULL,
LOGIN VARCHAR(50) NOT NULL,
PASSWORDMD5 VARCHAR(50) NOT NULL,
NUMERO INT(3) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (NUMERO)
);

我无法理解为什么会收到错误 1005,字段类型是相等的!

最佳答案

问题在这里:

CONSTRAINT ESTATINFORME_CK CHECK ESTATINFORME IN ('PENDENT','TANCAT'),

将条件括在括号中:

CONSTRAINT ESTATINFORME_CK CHECK (ESTATINFORME IN ('PENDENT','TANCAT')),

关于MySQL 外键到 auto_increment 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43986159/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com