Hi:如何建一张表, 表里有个字段带有&符号, 如:create table AAA
( P&L  varchar2(250)
)会报错。

解决方案 »

  1.   

    用'转义字符
    insert into tab values(''');
      

  2.   

    create table AAA
    "P&L" varchar2(250)
    );
    后续引用这个字段时都要加上双引号,严格区分大小写
      

  3.   

    &符号不能用于对象名,加上双引号也没有用
      

  4.   


    我试了下, 会提示输入L 的值, 说明还是把&L 当做一个参数了
      

  5.   

    别试了。
    不成。试了动态sql,引号,值里面输入&l,统统不成。
    不过为啥一定要字段带这特殊字符?
      

  6.   

    SQL> set define off
    SQL> 
    SQL> create table AAA
      2  ( "P&L" varchar2(250)
      3  );Table createdSQL> insert into aaa values('asdf');1 row insertedSQL> select "P&L" from aaa;P&L
    --------------------------------------------------------------------------------
    asdf
      

  7.   


    -- 用 chr 函数
    SQL> begin
      2   execute immediate 'create table t ("P'||chr(38)||'L" varchar2(10))';
      3  end;
      4  /PL/SQL procedure successfully completed.SQL> desc t
     Name                                                              Null?    Type
     ----------------------------------------------------------------- -------- --------------------------------------------
     P&L                                                                        VARCHAR2(10)