首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL alter将TINYINT更改为SMALLINT

问MySQL alter将TINYINT更改为SMALLINT
EN

Stack Overflow用户
提问于 2012-01-18 07:03:10
回答 1查看 11.9K关注 0票数 0

我有以下两个表的数据库(请原谅我丑陋的格式):

代码语言:javascript
复制
TABLE_A : Id TINYINT, PRIMARY KEY (Id)
TABLE_B : Id TINYINT, FOREIGN KEY (Id) REFERENCES TABLE_A (Id)

我想修改Id,使它是一个SMALLINT而不是TINYINT。以下是几次失败的尝试:

代码语言:javascript
复制
mysql> ALTER TABLE TABLE_A MODIFY Id SMALLINT
ERROR 1025 (HY000): Error on rename of '.\testdb\#sql-bcc_16' to '.\testdb\table_a' (errno: 150)

mysql> ALTER TABLE TABLE_B DROP FOREIGN KEY (Id)
ERROR 1025 (HY000): Error on rename of '.\testdb\table_b' to '.\testdb\#sql2-bcc-16' (errno: 152)

有人知道这是怎么回事吗?

EN

回答 1

Stack Overflow用户

发布于 2012-01-18 07:09:03

使用以下查询

mysql> ALTER TABLE Price MODIFY Id SMALLINT

mysql> ALTER TABLE Sale MODIFY Id SMALLINT

mysql> ALTER TABLE Phone MODIFY Id SMALLINT

很久以前我也在MySQL alter table generating "error on rename"上回答过.但你不是在回答..。

在你的情况下将会是

mysql> ALTER TABLE TABLE_A MODIFY Id SMALLINT

mysql> ALTER TABLE TABLE_B MODIFY Id SMALLINT

更新

检查Help with: ERROR 1025 (HY000): Error on rename of .... (errno: 150)..。也许能帮到你..。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8906386

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档