在sqlplus中 执行 select 'a' from dual; 执行的结果发现 a后面多出31个空格。 数据库服务器安装的oracle的版本为oracle 10.2.0.1.0,操作系统是linux。 我在另外一台备用的服务器测试,就没有此问题,我怀疑是系统把这种常量当成char类型来处理了,不知道哪位高手有什么解决办法没?

解决方案 »

  1.   

    trim一下可以解决这个问题,但是这个治标不治本,现在暂时就是用trim来处理的,现在怀疑是数据库配置出了什么问题。
      

  2.   

    SQL> desc dual;
     名称                                      是否为空? 类型
     ----------------------------------------- -------- ----------------------------
     DUMMY                                              VARCHAR2(1)SQL> 
      

  3.   

    select rtrim('a',' ')from dual
      

  4.   

    我也遇到了这种问题,也是今天-_-!!
    插入数据库时,在自己机器测试没问题,有生产机却出了问题,查找原因,发现常量的后面多了好多空格
    正查找空格的出处,就剩这个常量查询的地方没有测了
    我的环境:Ora9.2.8,AIX5.3
    LZ是啥原因?找到了吗?
      

  5.   

    没有找到原因啊,现在只能是在写sql时 加上rtrim()了。