可能是你定义的变量的长度小于值的长度造成的。
你使用的是不是中文字符集,如果是,就可能是有中文汉字时长度超出。
比如:变量的长度为10,如果你保存汉字,就只能保存5个汉字。但5个汉字的字符串用LENGTH得到的值为5,所以你用LENGTH判断长度是没有用的。如果要准确的判断字符串的长度,需要用:LENGTHB来判断。
select length('中国人民共和国') from dual; ==> 7
如果将字符串'中国人民共和国'保存到长度为10的变量中,肯定不行。
你使用的是不是中文字符集,如果是,就可能是有中文汉字时长度超出。
比如:变量的长度为10,如果你保存汉字,就只能保存5个汉字。但5个汉字的字符串用LENGTH得到的值为5,所以你用LENGTH判断长度是没有用的。如果要准确的判断字符串的长度,需要用:LENGTHB来判断。
select length('中国人民共和国') from dual; ==> 7
如果将字符串'中国人民共和国'保存到长度为10的变量中,肯定不行。
解决方案 »
- 如何生成远程数据库的awr报告
- 请大侠来:PLSQL块中执行DDL语句的问题
- 我在为scott创建bitmap位图索引时,老说我users表空间限额,我都把表空间设置成800M都不行,真是郁闷。
- 回答出下列问题并能举出一列子者,如果你月薪没上2万,劝你跳槽吧
- 谁能帮我看以下哪里错了...数据查询..在线等..
- 求一条sql语句或者脚本
- oracle 9i 的备份恢复问题。
- 为什么v$logmnr_contents的session_info列client_info项是空的?
- 在线等,关于ORACLE批量插入数据,请各路高手发言??
- 本人谦虚求教:1:oracle9i过程中,如果客户端没有安装,只安装了服务器端,那么管理服务器是否能正常安装。2:如果要建立一个数据库,是
- 谁能提供一些监控oracle数据库运行动态性能的第三方工具?
- 怎么用命令方式启动/关闭win2000下的oracle?
(temp_bm in char,
temp_cs in number,
Result out number)
as
begin
null;end;源码如上面所示!!不知道是什么原因,调用时temp_bm:=‘01’,temp_cs=0;