免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5508 | 回复: 1
打印 上一主题 下一主题

oracle 中number类型精度 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-09-19 14:53 |只看该作者 |倒序浏览
某列的类型为 number( 20 , 0 ) .
数据为 :  89999999999999999999(20位) , 查询出来的值是 : 90000000000000000000(20位)
不期望这样 。 其实本人的本义只想要0~99999999999999999999(20位)  . 精度是1个单位就可以。 ( 做id用) .
请问有什么办法嘛 。 难道用varchar2(20) .
3x~

论坛徽章:
0
2 [报告]
发表于 2006-09-19 18:28 |只看该作者

  1. SQL> create table test(cola number(30,0));

  2. Table created.

  3. SQL> insert into test values (12345678901234567890123456789);

  4. 1 row created.

  5. SQL> select * from number
  6.   2
  7. SQL> select * from test;

  8.       COLA
  9. ----------
  10. 1.2346E+28

  11. SQL> select to_char(cola,'999999999999999999999999999999') from test;

  12. TO_CHAR(COLA,'99999999999999999
  13. -------------------------------
  14.   12345678901234567890123456789

  15. SQL> /

  16. TO_CHAR(COLA,'99999999999999999
  17. -------------------------------
  18.   12345678901234567890123456789

  19. SQL> l
  20.   1* select to_char(cola,'999999999999999999999999999999') from test
  21. SQL> select * from test;

  22.       COLA
  23. ----------
  24. ##########

  25. SQL> col cola for 99999999999999999999999999999999
  26. SQL> /

  27.                              COLA
  28. ---------------------------------
  29.     12345678901234567890123456789

  30. SQL>
复制代码


sql reference 中有data type的描述
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP