常见ORA错误(一)

时间:2021-10-31 01:08:19

最近在学习JDBC遇到一些ora错误,总结整理了一下。

1.ORA-00904: 标识符无效
建立列表时,列名不能加双引号(我用的是pl/sql),连接java程序时就会出现ORA-00904: 标识符无效的错误,去掉引号即可。
2.ORA-00984: 列在此处不允许
这就说明有些列需要加单引号而你没有加。看一个例子:

String sql = "INSERT INTO examstudent VALUES(" + student.getFlowId() + "," + student.getType() + ",'"
+ student.getIdCard() + "','" + student.getExamCard() + "','" + student.getStudentName() + "','"
+ student.getLocation() + "'," + student.getGrade() + ")";

这里的idcard,studentname…需要加单引号。
3.ORA-00907;缺失右括号(这里只指创建表时)
3.1创建表时表中字段有关键字

示例如下:

CREATE TBALE emp(
id number(18) not null,
desc varchar245) not null
)

解决方案如下:给对应的关键字加上双引号

CREATE TBALE emp(
id number(18) not null,
“desc” varchar2(45) not null
)
3.2 创建表时未对表中的字段设置长度

示例如下:

CREATE TBALE emp(
id number(18) not null,
“desc” varchar2 not null

)

解决方案如下:

CREATE TBALE emp(
id number(18) not null,
“desc” varchar2(45) not null
)
注:若有不对的地方,欢迎骚扰!