gpt4 book ai didi

mysql - 修改列的最简单方法?

转载 作者:搜寻专家 更新时间:2023-10-30 20:28:59 25 4
gpt4 key购买 nike

如果我尝试做如下的事情:

ALTER TABLE myTable MODIFY id int unsigned;

id是主键或外键,会抛出如下错误:

ERROR 1025 (HY000): Error on rename of './mydb/#sql-146dd_c' to './mydb/myTable' (errno: 150)

如果我放下 key 做这样的事情:

ALTER TABLE myTable DROP FOREIGN KEY id;

然后我可以正常运行我的MODIFY,但这似乎有点令人费解。

有什么方法可以让我修改我的列而不删除和重新添加我的主键/外键?

最佳答案

你确实可以rename primary keys , 但是,您必须先使用 the DROP PRIMARY KEY 暂时撤销他们的特殊状态。 ALTER TABLE 子句:

ALTER TABLE tbl_name DROP PRIMARY KEY my_misnamed_primary_key;
ALTER TABLE tbl_name RENAME COLUMN my_misnamed_primary_key TO primary_key;
ALTER TABLE tbl_name ADD PRIMARY KEY primary_key;

抱歉,但出于完整性考虑,这是您应该这样做的唯一方式。

关于mysql - 修改列的最简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16327292/

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