SQL中是否有一个具有最大长度的数字类型?

时间:2014-11-02 15:47:58

标签: sql postgresql

我使用的是PostgreSQL,我需要一种属性类型,可以存储一个不能超过7位数的数值。

是否有类似的属性,或者我是否需要将其设为只能存储数字的文本列?

2 个答案:

答案 0 :(得分:4)

DECIMALNUMERIC(彼此的同义词)将提供此功能。您可以指定小数点右侧的总位数和数字。例如{#1}}用于##。#######。

答案 1 :(得分:1)

通常,当你有一个"数字"以数字形式固定的值,那么你真的有一个类似帐号的东西。虽然这看起来像一个数字,但实际上,它实际上并不是出于以下几个原因:

  • 前导零是重要的
  • 您无法对值
  • 执行算术运算
  • 有时,个别数字可能具有特定含义

如果您正在尝试这样做,我建议您使用CHAR(7)并明确包含前导零。如果您确实拥有这些约束的数字,则可以使用DECIMAL(7)。如果您使用CHAR(7),则可以使用检查约束来验证数字。