大家好,我想请教一个问题。
我数据库中有一个字段是number
create table test
(
  num   NUMBER
)我往数据库中插入22位的9insert into test(num) values(9999999999999999999999)但是查询出来的结果是:
                num
----------------------
9999999999999999900000另外,做了如下设置 set numw 22;我在网上搜索半天没找到原因,请大家帮帮忙~多谢!

解决方案 »

  1.   

    create table test
    (
      num NUMBER(22)
    )
    字段指定精度
      

  2.   

    SQL*Plus: Release 10.2.0.1.0 - Production on 星期六 4月 10 00:48:08 2010Copyright (c) 1982, 2005, Oracle.  All rights reserved.
    连接到: 
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
    With the Partitioning, OLAP and Data Mining optionsSQL> create table test
      2  (
      3    num NUMBER
      4  );表已创建。SQL> insert into test(num) values(9999999999999999999999);已创建 1 行。SQL> commit;提交完成。SQL> set numw 22
    SQL> select * from test;                   NUM
    ----------------------
    9999999999999999999999SQL> 
      

  3.   

    确定是你工具的问题
    在命令行下查询,
    和用PLSQL下查询,都发现时正常的。