0

除了使用 MySQL 的DESCRIBE语法和解析Type列之外,有没有办法以编程方式确定可以存储在给定INT列及其变体中的最大整数是多少?(例如TINYINT,MEDIUMINT等)我只是存储一个硬编码表,除了我的列使用自定义长度,如TINYINT(2)MEDIUMINT(5)

我问是因为我正在考虑编写一个 cron 作业,以在我的各种基于整数的自动递增 ID 列接近其最大值时警告我,这样我就可以降低整数溢出的风险。

编辑

我看到这是一个愚蠢的问题。正如向我指出的那样,自定义长度不会影响这些列可以存储的最大整数值。因此,如果我想编写脚本,我可以硬编码 MySQL 手册中给出的最大整数大小。至于这个脚本是否是处理事情的最佳方式,这是值得商榷的。

4

1 回答 1

1

自定义长度不会影响最大值,对于 INT,它们只是视觉输出/显示值的提示,并且仅在使用自动填充前导零时使用。

请参阅:https ://stackoverflow.com/a/6817537/330315 和这里:https ://stackoverflow.com/a/5634151/330315 和这里: https : //stackoverflow.com/a/4432037/330315和这里:https ://stackoverflow.com/a/7048597/330315(tnx 到 a_horse_with_no_name 一次给我这些链接。)

于 2013-04-08T18:21:18.593 回答