Varchar2类型列中的下划线值

时间:2014-12-19 14:42:29

标签: sql oracle web-services xml-parsing

varchar2类型列中的字符是否可以接受(' _')可接受(可插入)?

有一个值需要插入到我的某个表的varchar2列中,但该值包含一个下划线,例如' DOC_OTHER'

该值不会插入到varchar2列中,而其值中不包含下划线字符的其他值可以轻松插入(像往常一样)。

我无法理解这种不寻常的行为。推荐!!


编辑:

由于该值是从Web服务响应xml中获取的,因此就是这样做的。 sql代码很好。 正在检索所有其他值,此外路径也没有任何问题。

循环回复:

begin
    for p in (
            select * from
            ----  some xmlnamespaces of the response  ----
                   columns
                           "DocData"     varchar2(240) path 'path to DocData in response'
                          ,"RepID"       varchar2(200) path 'path to RepID in response'
                          ,"DocInit"     varchar2(400) path 'path to DocInit in response'

              )

    loop 
        begin                                                                        
           insert into pooling_info                                                       
           (session_id, user_id, DocData, RepID, DocInit)                                  

           values(                                                                         
           p_session, p_user, p."DocData", p."RepID", p."DocInit"                              
           );
         end;
    end loop; 
end;

如果DocData的值不包含下划线字符,则会将其插入表中,这很奇怪,但如果数据包含下划线,则不会插入该值!

它不会抛出任何错误。除了包含下划线

的此(DocData)之外,将插入周围的值

1 个答案:

答案 0 :(得分:1)

VARCHAR2列添加“_”字符没有什么不寻常之处。

正如其他人所指出的那样,'_'字符是一个通配符,因此当与LIKE条件一起使用时,它确实具有特殊含义。

很可能,我怀疑您遇到的问题是大小问题(例如,您正在尝试为正在修改的VARCHAR2放置一些太大的东西)或者存在约束问题。

以下是使用示例模式SCOTT修改列的示例。

SCOTT@dev> 
  1  CREATE table EMP3 as
  2  (SELECT *
  3*   FROM emp)
SCOTT@dev> /

Table created.


SCOTT@dev> select empno, ename from emp3 where empno = 7369;

     EMPNO ENAME      
========== ==========
      7369 SMITH    

1 row selected.  
SCOTT@dev> DESC emp3;
 Name                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Null?    Type
 -------------------------
 EMPNO NOT NULL NUMBER (4)
 ENAME VARCHAR 2(10)
 JOB VARCHAR 2(9)
 MGR NUMBER (4)
 HIREDATE DATE 
 SAL NUMBER (7,2)
 COMM NUMBER (7,2)
 DEPTNO NUMBER (2)

SCOTT@dev> UPDATE emp3
  2  SET ename = ename || '_BOB'
  3  WHERE empno = 7369
  4  ;

1 row updated.

SCOTT@dev> select ename
  2  from
  3  emp3 where empno = 7369;

ENAME
==========
SMITH_BOB