Fakipo Asked: 2020-10-10 11:31:40 +0800 CST2020-10-10 11:31:40 +0800 CST 2020-10-10 11:31:40 +0800 CST 为什么我在最新版本的 MySQL 中收到关于 INT(11) 折旧的警告? 772 当我尝试使用 INT 类型的列创建表时,它会自动分配为 INT(11),并且此 Int 长度将在最新版本的 MySQL 中贬值。除了 INT(11),我如何将列声明为 INT? mysql mysql-workbench 1 个回答 Voted Best Answer RolandoMySQLDBA 2020-10-10T11:52:09+08:002020-10-10T11:52:09+08:00 仅仅因为它已被弃用并不意味着它不起作用。 只是在创建新表时不再明确指定长度。 让 MySQL 弄清楚如何处理长度。 就我个人而言,在我担任 DBA 的那些年里,我从未使用过长度运算符。此外,长度运算符(11)仅代表带符号的显示INT。 签名的范围是多少INT???-2147483648到2147483647. 请注意-2147483648是 11 个字符。SHOW CREATE TABLE这就是为什么如果您在没有长度运算符的情况下创建表时会出现 11 的原因。 如果您关心 MySQL Workbench 如何处理它,您可能需要考虑: 升级到最新版本的 MySQL Workbench 切换到另一个最新的 MySQL GUI 目前,最好的办法是在没有长度运算符的情况下运行SHOW CREATE TABLE和命令。ALTER TABLE让 MySQL 弃用发生,不要回头。
仅仅因为它已被弃用并不意味着它不起作用。
只是在创建新表时不再明确指定长度。
让 MySQL 弄清楚如何处理长度。
就我个人而言,在我担任 DBA 的那些年里,我从未使用过长度运算符。此外,长度运算符
(11)
仅代表带符号的显示INT
。签名的范围是多少
INT
???-2147483648
到2147483647
. 请注意-2147483648
是 11 个字符。SHOW CREATE TABLE
这就是为什么如果您在没有长度运算符的情况下创建表时会出现 11 的原因。如果您关心 MySQL Workbench 如何处理它,您可能需要考虑:
目前,最好的办法是在没有长度运算符的情况下运行
SHOW CREATE TABLE
和命令。ALTER TABLE
让 MySQL 弃用发生,不要回头。