MySQL中的“无符号”是什么意思,什么时候使用它?
什么是“无符号的”在MySQL中意味着什么,我应该什么时候使用它?
MySQL说:
所有整数types都可以有一个可选的(非标准)属性UNSIGNED。 无符号types可用于只允许列中的非负数,或者当您需要 列 的较大数值范围时 。 例如,如果INT列是UNSIGNED,则列的范围的大小是相同的,但其端点从-2147483648和2147483647转移到0和4294967295。
我什么时候使用它?
问问你自己这个问题: 这个领域是否会包含一个负值 ?
如果答案是否定的,那么你需要一个UNSIGNED
数据types。
一个常见的错误是使用从零开始的自动递增INT
的主键,但是types是SIGNED
,在这种情况下,您将永远不会碰到任何负数,并且将可能的ID的范围缩小到一半。