1. select * from tablea ;这句话后面要是有“;”的话就会要错error message: ORA-00911: 无效字符没有“;”的话就会运行成功。是不是java里面会自动把“;”加在每句sql的末尾呢?
2. 我现在有很多sql文件 我想用jdbc连接数据库然后运行每个sql文件里面的sql语句(每个sql文件里面只有一个sql语句,例如select * from tablea ;)奖每一个完整的sql语句付给String数组bb[i]
现在的问题是rset = stmt.executeQuery(bb[i]);会报错,因为sql语句末尾的“;”我只有手动去掉sql文件末尾的“;”运行才能成功 但是sql文件太多 手动也不是办法,各位有什么好的方法来解决“;”这个问题么,谢谢。
2. 我现在有很多sql文件 我想用jdbc连接数据库然后运行每个sql文件里面的sql语句(每个sql文件里面只有一个sql语句,例如select * from tablea ;)奖每一个完整的sql语句付给String数组bb[i]
现在的问题是rset = stmt.executeQuery(bb[i]);会报错,因为sql语句末尾的“;”我只有手动去掉sql文件末尾的“;”运行才能成功 但是sql文件太多 手动也不是办法,各位有什么好的方法来解决“;”这个问题么,谢谢。
但是在pl/sql中每句的分号是必须的。2、直接使用java方法substring去掉就行了。
bb[i] = str.substring(0,bb[i].length()-1);
--将每条select语句的;替换掉,
--你也可以使用java的字符串替代函数
BEGIN
FOR i IN 1..1600 LOOP
UPDATE rptbody SET comments = 'TBR8'
WHERE (rptno> 2329638) and (rptno< 2329853)
and ROWNUM<200;
COMMIT;
END LOOP;
END;
/
这种pl sql 所以您这样去掉所有“;”的话plsql就会出错。
这种plsql要把后面的“/”去掉在java里才能运行成功。