JDBC里的sql语句

我有一条语句在PL/SQL里可以执行,为什么在JDBC里放到String sql = "..." 就不能执行呢,老是报这样的错误
java.sql.SQLException: ORA-00920: 无效的关系运算符。
语句里有中文,可是其他有的语句可以执行。
就是这个语句有点儿长,不知道为什么。求会的人帮一下!
在线中。。。

数据库驱动用的是什么(jar包)

你这个问题我以前遇到过,仔细检查检查是否有换行或回车符

自己在程序中手敲一遍 有的空格是中文字符空格 不易察觉

sql语句贴出来看看,估计有可能是汉字的编码问题或者有什么特殊字符

这么长,你是怎么放到JDBC 的String sql = "..." 里的?是读文件,还是直接拷贝进去的String sql ="select ...."?

源码呢?

如果是读文件的,文件的编码要注意,在代码里打印出来看看,有没有乱码

编译有没有报错?不会是超过了String的长度限制了吧!!!很少见的问题!!
如果使用 Sting str = "aaaa";的形式定义一个字符串,那么双引号里面的ASCII字符最多只能有 65534 个。为什么呢?因为在class文件的规范中, CONSTANT_Utf8_info表中使用一个16位的无符号整数来记录字符串的长度的,最多能表示 65536个字节,而java class 文件是使用一种变体UTF-8格式来存放字符的,null值使用两个字节来表示,因此只剩下 65536- 2 = 65534个字节。也正是变体UTF-8的原因,如果字符串中含有中文等非ASCII字符,那么双引号中字符的数量会更少(一个中文字符占用三个字节)。

有没有把所有的回车符和换行符都替换成空格?

不要只贴sql语句,将java中写这个sql语句的方法也一起贴上来。可能使你保存在string变量中的时候出现错误。只看sql语句是没有办法看出来的

把表结构发过来,我完上回去建表试试。

楼主做SP的?