在平时的Java编程中,自己编写的sql语句会遇到一个很常见但是又不好发现的错误,就是 ora-- 00911 ,incalid character无效字符;我们通过复制控制台打印的sql语句放到PL\SQL中执行,并不会报上述错误,这是为什么呢?
首先我们检查程序中的SQL语句是不是以“分号”结尾,例如: public static final String QUERY_DATA = "SELECT NAME FROM STUDENT WHERE ID = 1;";
发现了没,一个很细微的错误,我们把 “分号”去掉程序就不会报错了,或者加上 BEGIN END;
public static final String QUERY_DATA = "BEGIN SELECT NAME FROM STUDENT WHERE ID = 1;END;";