【发布时间】:2020-11-30 18:55:00
【问题描述】:
我需要向已填充数据的表添加外键...
CREATE TABLE `clientes` (
`id_cliente` int(11) NOT NULL,
`id_cashback` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
CREATE TABLE `cashback00` (
`id` int(11) NOT NULL,
`valor` decimal(9,2) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
ALTER TABLE clientes ADD CONSTRAINT fk_cliente_cashback FOREIGN KEY (id_cashback) REFERENCES cashback(id)
ALTER TABLE 仅在未填充父表(客户)时才有效。
如果已经有数据,由于ALTER TABLE出现错误“error no. 150”外键约束格式不正确,如何处理
【问题讨论】:
-
我们看不到返现表(REFERENCES cashback(id)) 或者你想这样做:REFERENCES cashback00(id) ?
-
如果外键引用有效,则可以正常工作:dbfiddle.uk/….
-
@John,另外,很高兴回复那些帮助你回答和 cmets 的人......
-
我现在明白你的回答了……没错@GordonLinoff 谢谢大家的帮助
标签: mysql sql foreign-keys