免费注册 查看新帖 |

Chinaunix

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

[原创]NUMBER PLS_INTEGER BINARY_INTEGER 溢出情况测试 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-23 01:33 |只看该作者 |倒序浏览
  1. Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0
  2. Connected as SYS

  3. SQL>
  4. SQL> DECLARE
  5. 2 v_number NUMBER;
  6. 3 v_pls PLS_INTEGER;
  7. 4 v_binary BINARY_INTEGER;
  8. 5 BEGIN
  9. 6 v_number:=2147483647;
  10. 7 v_pls :=2147483647;
  11. 8 v_binary:=2147483647;
  12. 9
  13. 10 v_number:=v_number+1;
  14. 11 v_number:=2147483647+1;-- ORA-01426: 数字溢出
  15. 12 --v_number:=v_pls+1; -- ORA-01426: 数字溢出
  16. 13 --v_number:=v_binary+1; -- ORA-01426: 数字溢出
  17. 14 END;
  18. 15 /


  19. DECLARE
  20. v_number NUMBER;
  21. v_pls PLS_INTEGER;
  22. v_binary BINARY_INTEGER;
  23. BEGIN
  24. v_number:=2147483647;
  25. v_pls :=2147483647;
  26. v_binary:=2147483647;

  27. v_number:=v_number+1;
  28. v_number:=2147483647+1;-- ORA-01426: 数字溢出
  29. --v_number:=v_pls+1; -- ORA-01426: 数字溢出
  30. --v_number:=v_binary+1; -- ORA-01426: 数字溢出
  31. END;

  32. ORA-01426: 数字溢出
  33. ORA-06512: 在 line 12

  34. SQL>
  35. SQL> DECLARE
  36. 2 v_number NUMBER;
  37. 3 v_pls PLS_INTEGER;
  38. 4 v_binary BINARY_INTEGER;
  39. 5 BEGIN
  40. 6 v_number:=2147483647;
  41. 7 v_pls :=2147483647;
  42. 8 v_binary:=2147483647;
  43. 9
  44. 10 v_number:=v_number+1;
  45. 11 --v_number:=2147483647+1;-- ORA-01426: 数字溢出
  46. 12 v_number:=v_pls+1; -- ORA-01426: 数字溢出
  47. 13 --v_number:=v_binary+1; -- ORA-01426: 数字溢出
  48. 14 END;
  49. 15 /

  50. DECLARE
  51. v_number NUMBER;
  52. v_pls PLS_INTEGER;
  53. v_binary BINARY_INTEGER;
  54. BEGIN
  55. v_number:=2147483647;
  56. v_pls :=2147483647;
  57. v_binary:=2147483647;

  58. v_number:=v_number+1;
  59. --v_number:=2147483647+1;-- ORA-01426: 数字溢出
  60. v_number:=v_pls+1; -- ORA-01426: 数字溢出
  61. --v_number:=v_binary+1; -- ORA-01426: 数字溢出
  62. END;

  63. ORA-01426: 数字溢出
  64. ORA-06512: 在 line 13

  65. SQL>
  66. SQL> DECLARE
  67. 2 v_number NUMBER;
  68. 3 v_pls PLS_INTEGER;
  69. 4 v_binary BINARY_INTEGER;
  70. 5 BEGIN
  71. 6 v_number:=2147483647;
  72. 7 v_pls :=2147483647;
  73. 8 v_binary:=2147483647;
  74. 9
  75. 10 v_number:=v_number+1;
  76. 11 --v_number:=2147483647+1;-- ORA-01426: 数字溢出
  77. 12 --v_number:=v_pls+1; -- ORA-01426: 数字溢出
  78. 13 v_number:=v_binary+1; -- ORA-01426: 数字溢出
  79. 14 END;
  80. 15 /

  81. DECLARE
  82. v_number NUMBER;
  83. v_pls PLS_INTEGER;
  84. v_binary BINARY_INTEGER;
  85. BEGIN
  86. v_number:=2147483647;
  87. v_pls :=2147483647;
  88. v_binary:=2147483647;

  89. v_number:=v_number+1;
  90. --v_number:=2147483647+1;-- ORA-01426: 数字溢出
  91. --v_number:=v_pls+1; -- ORA-01426: 数字溢出
  92. v_number:=v_binary+1; -- ORA-01426: 数字溢出
  93. END;

  94. ORA-01426: 数字溢出
  95. ORA-06512: 在 line 14

  96. SQL>
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP