这个是我的表结构:
desc T_STUDENT;
Name         Type         Nullable Default Comments 
------------ ------------ -------- ------- -------- 
stu_id       VARCHAR2(10)                           
stu_name     VARCHAR2(40)                           
stu_password VARCHAR2(40) Y                         
stu_age      INTEGER      Y                         
stu_perform  FLOAT(2)     Y    在PL/SQL中向此表插入一条数据
insert into  T_STUDENT (stu_id, stu_name, stu_password, stu_age, stu_perform) values ('001', 'David', 'David', 12, 89.00);
插入失败,ORA-00904: "STU_PERFORM": 标识符无效
 为什么啊? 全改成大写也不行,将 stu_perform去掉 就会提示stu_age标识符无效。
求解决 麻烦各位大虾了~

解决方案 »

  1.   

    还真没看出什么问题,把那个sql语句,复制到notepad++下边,放大字体看看,是不是有什么字符用了全角或什么的???
      

  2.   

    额 楼上说的方法我都试过了…… 放心吧 现在是怎么样的我的就是怎么样的 
    没有什么半角全角 大写小写的问题。 会不会是oracle的权限问题? 
    我不是很会oracle 但是我在这个帐号下的另外几张表是没有问题的。
      

  3.   

    从你在pl/sql desc命令看出,你的字段名为小写,建表时字段加双引号的结果
    create table t_studetn("stu_id","stu_name",.........
    这样的话,在插入数据时字段上也加上双引号,并且大小写要对应,这样:
    insert into T_STUDENT ("stu_id", "stu_name", "stu_password", "stu_age", "stu_perform") values ('001', 'David', 'David', 12, 89.00);所以在建表时和使用标识符的时候都不要加上双引号,免得自找麻烦
      

  4.   

    楼上果然厉害。
    我也desc了我自己的表,字段真的是大写的。楼主的小写 ,估计就是这的事。平时还得细心观察这些小事呢