“unsigned”在MySQL中是什么意思,什么时候应该使用它?


当前回答

MySQL说:

所有整数类型都可以有一个可选的 (非标准)属性UNSIGNED。 Unsigned类型可用于允许 一列中只有非负数 或者当你需要更大的鞋面 列的数值范围。为 例如,如果INT列是UNSIGNED, 列范围的大小为 相同,但它的端点从 -2147483648和2147483647到0和4294967295。

什么时候使用它?

问自己这个问题:这个字段是否包含负值? 如果答案是否定的,那么您需要一个UNSIGNED数据类型。

一个常见的错误是使用一个从0开始的自动递增INT的主键,但类型是SIGNED,在这种情况下,您永远不会接触任何负数,并且您正在将可能的id的范围减少到一半。

其他回答

MySQL说:

所有整数类型都可以有一个可选的 (非标准)属性UNSIGNED。 Unsigned类型可用于允许 一列中只有非负数 或者当你需要更大的鞋面 列的数值范围。为 例如,如果INT列是UNSIGNED, 列范围的大小为 相同,但它的端点从 -2147483648和2147483647到0和4294967295。

什么时候使用它?

问自己这个问题:这个字段是否包含负值? 如果答案是否定的,那么您需要一个UNSIGNED数据类型。

一个常见的错误是使用一个从0开始的自动递增INT的主键,但类型是SIGNED,在这种情况下,您永远不会接触任何负数,并且您正在将可能的id的范围减少到一半。