如果我有一个长度为7个字符的ID字段,我应该将比例和精度设置为?这相当令人困惑。或者说一个电话号码为10个字符的字段......那么S和P是什么?
答案 0 :(得分:2)
对于一系列数字,例如电话号码或社会安全号码,邮政编码或ISBN,请考虑您将对其执行哪些操作。
你会成为:
如果是前者,则它们是数字,您应该将它们存储为整数。如果是后者,则它们被限制为仅由某些字符组成的字符串,并且您应该将它们存储为具有适当检查约束的字符串。
我想现在你问的问题是“我的水族箱水应该保持在什么温度以保持猫咪”?答案可能是,根本不应该这样做,因为你最终会被咬伤。
答案 1 :(得分:1)
对于ID,由于您不需要小数,因此精度为7且小数为0将适用于您的情况。对于电话号码,您可以使用varchar2或类似的东西,在这种情况下,缩放和精度将不适用。
您提到了ID的“字符”,但我假设它是数字。
有关Oracle中的比例和精度的文档可以在这里找到...... http://docs.oracle.com/cd/B28359_01/server.111/b28318/datatype.htm#CNCPT1832
具体来说:
...您还可以指定精度(总位数)和比例(小数点右侧的位数)
请注意,虽然精度和比例是可选的,您甚至可能不需要为ID之类的东西担心它们。
此处可以找到更多示例... What is the difference between precision and scale?