insert into testtbl(building) value('32'#楼');

解决方案 »

  1.   

    insert into testtbl(building) value('32'#楼');
    我执行这句居然报错
      

  2.   

    我在ORACLE 817中也未出错。如果楼主还是不行的话,
    就用全角的#好了(半角的是这样子#)
      

  3.   

    SQL> create table tbl(building varchar2(10));表已创建。SQL> insert into tbl (building)values('32#楼');已创建 1 行。SQL> insert into tbl (building)values('32'#楼');
    ERROR:
    ORA-01756: 括号内的字符串没有正确结束
      

  4.   

    insert into testtbl(building) value('32#'||chr(49829));好象是‘楼’这个汉字编码的问题。
      

  5.   

    我也可以啊insert into tbl (building)values('32#楼');
      

  6.   

    我也可以通过,真不行就这样吧
    insert into testtbl(building) value('32#'||chr(49829));
      

  7.   

    escape在通配符需要当作一般字符时才需要进行转义的,
    select * from test where name like '%%'
    查找以%开名的人,这样肯定找不到select * from test where name like '\%%' escape \
    在sql*plus中使用转义符'\',要首先修改环境变量 
    set escape on 
    随后就可以使用转义符'\'了,例如 
    SQL>set escape on 
    SQL>select count(*) from employees where name='\[$1'] 
       COUNT(*) 
    ---------- 
              0 
    SQL>select count(*) from employees where name='&1'; 
      
    输入 1 的值:  a 
      
    原值    1: select count(*) from employees where name='&1' 
    新值    1: select count(*) from employees where name='a' 
      
      COUNT(*) 
    --------- 
             0
      

  8.   

    我向大家详细介绍一下:
    系统oracle 9.0.2 web_logic 813
    问题出现经过,我写了一个SQL文件,sql plus下向表加入记录,发现遇到#就识别为用户定义变量,需要手工输入变量值。
    后来问题在jsp语句里面同样上演:sql语句的insert插入语句字段值含有#,#后面的都没加入进去,但是update可以生效.JDBC的问题还是oracle本身的问题?
      

  9.   

    set define &也不行,&这个字符也会被用到作为字段值
      

  10.   

    insert into testtbl(building) value('32'||chr(35)||chr(49829));不管什么情况啦,这样写总该没问题了吧