【发布时间】:2015-12-30 09:40:28
【问题描述】:
我面临在 oracle 的数字字段中插入法国数字的问题。我正在使用 SQL Developer IDE。当我插入数字(比如 3,4)时,它说无效数字。具体来说,
我不想将值 3,4 替换为 3.4。
我也尝试更改 NLS 设置(使用命令
Alter session set NLS_NUMERIC_CHARACTERS=',';
如果我使用此命令,我可以直接在编辑器中插入,但插入命令由于逗号而不起作用,Oracle 假定它是另一个值。
任何帮助将不胜感激。
【问题讨论】:
-
不能用逗号插入数值,而是使用varchar数据类型
-
@MuhammadMuazzam:永远不会在 varchar 列中存储数字。这是一个非常糟糕的建议
-
@MuhammadMuazzam 你看到的不是它在数据库中的存储方式。逗号和点是分隔符,仅用于显示目的。例如,stackoverflow.com/questions/33145216/…
-
@MuhammadMuazzam 所以?你还是没明白。数字在内部存储为可变大小。在内部它是尾数和指数。分隔符仅用于显示,而不是存储您看到的方式。
-
@mcapatna 您不能在 NUMBER 数据类型中存储分隔符。你只是在谈论显示。