MySQL中的“无符号”是什么意思,什么时候使用它?

什么是“无符号的”在MySQL中意味着什么,我应该什么时候使用它?

MySQL说:

所有整数types都可以有一个可选的(非标准)属性UNSIGNED。 无符号types可用于只允许列中的非负数,或者当您需要 的较大数值范围时 。 例如,如果INT列是UNSIGNED,则列的范围的大小是相同的,但其端点从-2147483648和2147483647转移到0和4294967295。

我什么时候使用它?

问问你自己这个问题: 这个领域是否会包含一个负值
如果答案是否定的,那么你需要一个UNSIGNED数据types。

一个常见的错误是使用从零开始的自动递增INT的主键,但是types是SIGNED ,在这种情况下,您将永远不会碰到任何负数,并且将可能的ID的范围缩小到一半。