gpt4 book ai didi

MySQL,重命名数据库中所有表的所有列

转载 作者:行者123 更新时间:2023-11-29 00:52:40 25 4
gpt4 key购买 nike

我在数据库中有大约 500 多个表,需要重命名所有表的所有列。数据库引擎是InnoDB。目前我正在执行每张表

ALTER TABLE RENAME db.table CHANGE oldID newID INT, CHANGE oldDESC newDESC VARCHAR(50);

这在某些表上是失败的(错误号:150),因为它们具有引用其他表的外键约束。

是否有更聪明的方法来避免那些可怕的错误?

最佳答案

您可以尝试在更新时禁用外键检查,然后再次启用它们

编辑:也许this可以帮忙

START TRANSACTION;  
SET foreign_key_checks = 0; -- off

.. do stuff here

SET foreign_key_chekcs = 1; -- on.
COMMIT;

关于MySQL,重命名数据库中所有表的所有列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7684324/

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