首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > IBM DB2 >

DB2 LENGTH函数的有关问题,请 ,谢谢了

2012-03-14 
DB2 LENGTH函数的问题,请大家帮忙看看啊 ,多谢了啊在procedure中DECLARENextNumDECIMAL(25,0)DEFAULT-1DE

DB2 LENGTH函数的问题,请大家帮忙看看啊 ,多谢了啊
在procedure中
  DECLARE     NextNum   DECIMAL(25,   0)     DEFAULT   -1;            
  DECLARE     num1     BIGINT     DEFAULT   -1;  
  DECLARE     nlen       integer   DEFAULT   -1;    
  DECLARE     sMsg     Varchar(21)       DEFAULT   ' ';      
  set   NextNum     =1000;              
  set         num1           =   BIGINT(NextNum);    
set     nlen       =   length(num1);
//   这里为什么nlen       不是4,而是他的   字节长度8
set     nlen       =   length(char(   BIGINT(NextNum)));
//为什么这里的nlen       又是20     而切如过在声明变量类型   DECLARE     sMsg     Varchar(21)       DEFAULT   ' ';     小于20是   这里返回的就是定义的长度
如DECLARE     sMsg     Varchar(18)       DEFAULT   ' ';     这里的nlen       就是18     请高手帮忙解货的啊  


[解决办法]
奇怪
[解决办法]
set Num= char(BIGINT(NextNum));
Num=rtrim(Num);

然后再用 set nlen = length(Num);去长就正常了.
你试试

热点排行