ORACLE数据库字段长度为number(19),在pl/sql中insert一个19位数字进去,显示为科学计数法.解决方法:在pl/sql–>工具–>首选项–>sql窗口–>选中数字字段to_char即可...
Oracle
number
类型
详解简介基本说明容易出错情况
Number
与My
SQL
数据
类型
Oracle
的
number
类型
比较复杂,很多限制,但是掌握一点小技巧就能轻松搞定。
number
(precision,scale)
precision表示
数字
中的有效
位
,从左边第一个不为0的数算起,小数点和负号不计入有效
位
数
precision的取值范围是[1,38]
precision默认值为38,
number
等价于
number
(38)
scale大于0,表示
数字
精确到小数点右边的
位
数,numb
number
类型
的语法很简单:
number
(p,s):
p:精度
位
,precision,是总有效数据
位
数,取值范围是38,默认是38,可以用字符*表示38。
s:小数
位
,scale,是小数点右边的
位
数,取值范围是-84~127,默认值取决于p,如果没有指定p,那么s是最大范围,如果指定了p,那么s=0。
最高整数
位
数=p-s
s正数,小数点右边指定
位
置开始四舍五入
s负数,小数点左边
ID可以随机
生成
,数据太多的时候有可能会重复
19
位
to_
number
(to_char(systimestamp,'yyyy') || trunc(dbms_random.value(100000000000000,999999999999999)));
具体执行插入
sql
如下
INSERT INTO user_item (
ID, name, code,create...
Oracle
number
datatype 语法:
NUMBER
[(precision [, scale])]
简称:precision --> p
scale --> s
NUMBER
(p, s)
范围: 1
保存数据范围:-1.0e-130
保存在机器内部的范围: 1 ~ 22 bytes
有效为:从左边第一个不为0的
默认情况下,
Number
格式的列内容如果大于10
位
, 查询结果将
显示
成类似1000000000E+12 的样子。
以下方式可以不改动
数据库
的情况下使其正常
显示
:
第一种,查询时,给选择列加 to_char 方法
selectto_char(列名)from表
第二种,查询前,...
如果您正在使用
PL
/
SQL
Developer 访问
Oracle
数据库
时遇到乱码问题,这可能是由以下
原因
之一引起的:
1.
PL
/
SQL
Developer 的编码设置不正确。您可以在
PL
/
SQL
Developer 设置中调整编码设置,确保它与
数据库
的编码设置一致。
2.
数据库
、客户端和服务器之间的编码设置不匹配。如果
数据库
、客户端和服务器的编码设置不同,可能会出现乱码问题。您需要确保这些设置都一致,并按照正确的顺序进行设置。
3.
数据库
对象包含
无法
解析的字符。如果某个
数据库
对象(如表、列、存储过程等)包含
无法
解析的字符,则可能会在
PL
/
SQL
Developer 中
显示
为乱码。您需要使用正确的编码将这些对象重新创建。
以上是解决
PL
/
SQL
Developer
Oracle
乱码问题的一些常见方法,您可以根据具体情况进行尝试。如果问题仍然存在,请联系您的
数据库
管理员或技术支持。