【发布时间】:2017-10-20 14:25:51
【问题描述】:
这应该是一个非常简单的问题,但我找不到有效的解决方案。
我将日期从 Oracle 迁移到 MYSQL,在此过程中,所有主键都设置为 auto_increment。
但是,有很多已识别的关系(父 PK 与子 PK 相同)。
所以做事务的正确方法是插入到父表中,从这个交互中得到result.insertId,然后在子表中插入相同的值。我知道我可以简单地忽略在插入命令中发送 id 的 auto_increment,但我不想就此放弃。
因为我读到的解决方案说我需要将列更改为完全相同的规范但 auto_increment,所以我运行以下 SQL:
alter table added_object modify column id_interaction_object int(11) not null;
.. 我收到以下消息:
错误 1833 (HY000):无法更改列“id_interaction_object”:已使用 在表的外键约束“FK__METRIC__ADDED_OBJECT”中 “公制”
有什么建议吗?
谢谢
【问题讨论】:
-
以后,我知道你比我更专业,但那句话应该这样写:ALTER TABLE added_object MODIFY COLUMN id_interaction_object INT(11) NOT NULL;
标签: mysql