这应该是一个非常简单的问题,但我找不到有效的解决方案。
我将数据从Oracle迁移到MYSQL,在此过程中,所有主键都设置为自动递增。
然而,有很多已知的关系(父PK与子PK相同)。
因此,正确的处理方法是先插入父表,获取result.insertId
,然后将相同的值插入子表。我知道我可以在插入命令中忽略自动递增,直接发送ID,但我不想就这样放弃。
由于我读到的解决方案说我需要将列更改为完全相同的规范,但自动递增,因此我运行了以下SQL:
我将数据从Oracle迁移到MYSQL,在此过程中,所有主键都设置为自动递增。然而,有很多已知的关系(父PK与子PK相同)。因此,正确的处理方法是先插入父表,获取result.insertId,然后将相同的值插入子表。我知道我可以在插入命令中忽略自动递增,直接发送ID,但我不想就这样放弃。由于我读到的解决方案说我需要将列更改为完全相同的规范,但自动递增,因此我运行了以下SQL:
alter table added_object modify column id_interaction_object int(11) not null;
..然后我收到以下消息:
ERROR 1833 (HY000):无法更改列'id_interaction_object':在表'metric'中使用了外键约束'FK__METRIC__ADDED_OBJECT'
有什么建议吗?
谢谢