如果我有一个长度为7个字符的ID字段,我将比例和精度设置为什么?这相当令人困惑。或者说一个电话号码为10个字符的字段......那么S和P是什么?
对于一系列数字,如电话号码或社会安全号码,邮政编码或ISBN,请考虑您将对其执行哪些操作。
你会在:
如果是前者,则它们是数字,您应该将它们存储为整数。如果是后者,则它们被限制为仅由某些字符组成的字符串,并且您应该将它们存储为具有适当检查约束的字符串。
我想现在你问的问题是“我的水族箱水应该保持什么温度以保持猫咪”?答案可能是,根本不应该这样做,因为你最终会被咬伤。
对于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?