ora-00911: 无效字符 --使用jdbc查询数据库数据时控制台报错

使用原生的jdbc 查询数据库的数据,在pl/sql的窗口上查询时,能查到数据,但把sql语句粘贴到代码就执行就报错了


SELECT nvl(gspt.FOCA_DATE, '') FOCA_DATE,
       nvl(gspt.FOCA_TIME, '') FOCA_TIME,
       nvl(info.FARM_NUMB, '') FARM_NUMB,
       nvl(gspt.GROUP_ID, '') GROUP_ID,
       nvl(round(gspt.THEORY_NUM, 4), '') THEORY_NUM,
       nvl(round(gspt.MODE_NUM, 4), '') MODE_NUM
  FROM GF_SPPS_PROD_THEORY gspt
 INNER JOIN SPPS_PTC_FARM_INFO info
    ON info.FARM_ID = gspt.FARM_ID
 WHERE gspt.FOCA_DATE = '2016-12-30'
 ORDER BY gspt.FOCA_TIME ASC;

				// sql语句
				StringBuilder sql = new StringBuilder();
				sql.append(" SELECT ")
				.append(" nvl(gspt.FOCA_DATE,'') FOCA_DATE, ")
				.append(" nvl(gspt.FOCA_TIME,'') FOCA_TIME, ")
				.append(" nvl(info.FARM_NUMB,'') FARM_NUMB, ")
				.append(" nvl(gspt.GROUP_ID,'') GROUP_ID, ")
				.append(" nvl(round(gspt.THEORY_NUM,4),'') THEORY_NUM, ")
				.append(" nvl(round(gspt.MODE_NUM,4),'') MODE_NUM  ")
				.append(" FROM ")
				.append(" GF_SPPS_PROD_THEORY gspt ")
				.append(" INNER JOIN SPPS_PTC_FARM_INFO info ON info.FARM_ID = gspt.FARM_ID ")
				.append(" WHERE gspt.FOCA_DATE = '"+time+"' ")
				.append(" ORDER BY gspt.FOCA_TIME ASC ;");

运行时报错 : ora-00911: 无效字符

ora-00911: 无效字符 --使用jdbc查询数据库数据时控制台报错_第1张图片


ora-00911: 无效字符 --使用jdbc查询数据库数据时控制台报错_第2张图片

后来,查找原因,就是在java代码末尾加了 ; 号,去掉 ; 号,程序就正常运行了

ora-00911: 无效字符 --使用jdbc查询数据库数据时控制台报错_第3张图片


OK

你可能感兴趣的:(数据库)