Create Table 员工处罚表 (员工姓名 NvarChar2(18) Null,处罚原因 NvarChar2(255) Null,处罚内容 NvarChar2(255) Null,处罚日期 Date Null,操作员 NvarChar2(18) Null,标识号 Number(11) Not Null)

解决方案 »

  1.   

    赞一个!
    我在另一个字符集是USA7ASCII的数据库中创建失败!Create Table 员工处罚表 (
    员工姓名 NvarChar2(18) Null,
    处罚原因 NvarChar2(255) Null,
    处罚内容 NvarChar2(255) Null,
    处罚日期 Date Null,
    操作员 NvarChar2(18) Null,
    标识号 Number(11) Not Null)
    Error at line 1
    ORA-00911: invalid character
      

  2.   

    感谢楼上几位兄弟,可是还是百思不得其解:
    一、我的另一些表字段也是用的是中文,可创建数据表成功。
    二、我下面的用英文创建数据表也一样出现:非法的变量/编号错误:
    Create Table CustomerDemographics (customertypeid NvarChar2(10) Null,customerdesc Clob Null)
      

  3.   

    你的数据库版本多少的,是否支持NVCHAR2 ???
      

  4.   

    我现在在做一个数据库迁移程序,别的ACCESS、FOXPRO、MYSQL、SQLSERVER之间迁移都没问题,可是ORACLE总是出现非法的变量/编号错误,头都大了。
    下面的创建数据表是SQLSERVER的NORTHWIND数据库中的一个表,也出现同样的问题。Create Table Customers (customerid NvarChar2(5) Null,companyname NvarChar2(40) Null,contactname NvarChar2(30) Null,contacttitle NvarChar2(30) Null,address NvarChar2(60) Null,city NvarChar2(15) Null,region NvarChar2(15) Null,postalcode NvarChar2(10) Null,country NvarChar2(15) Null,phone NvarChar2(24) Null,fax NvarChar2(24) Null)
      

  5.   

    NVCHAR2替换成VARCHAR2
     看看...
      

  6.   

    支持NVARCHAR2的,因为我不创建了其它数据表,也用到了NVARCHAR2,为什么要用NVARCHAR2,是因为其它类型的数据库中有NVARCHAR,如果在ORACLE中用VARCHAR2的话会出现字段内容走出字段长度的错误。
      

  7.   

    SqlClient参数表达式:@ParameterName   
      OracleClient参数表达式::ParameterName   
      OleDB.Net参数表达式:?  似乎是这个引起的...
      

  8.   

    兄弟你说的这个问题,我昨天解决了,我是在导入图像字段时出现这个问题,当时也是按照SQLSERVER模式在参数前加了@,出现非法变量名错误。可是我上面的创建数据表没有用到@字符,最大的可能还是字符集引起的。