最近用plsql通过 @sql语句路径的方式 因为手贱导致sql文件执行不下去的问题
2013-06-08 15:02
441 查看
最近用plsql通过 @sql语句路径的方式 执行sql语句时,遇到执行了一半语句执行不下去的情况,
如果是A文件或者B文件都分别单独执行时都没有任何问题,
但恰恰是通过 @sql语句路径的方式执行时,AB连起来执行就出了问题,
后来经过排查才发现,A文件最后一行sql语句没有以“;”结束,
有人可能会说了,在plsql中经常很多语句不用“;”结束一样可以执行,甚至多行语句一起执行,最后一行语句也没有“;”一样可以执行,的确这样是可以的,
但是有一点需要注意:
最后一行语句没有“;”,但至少这最后一行后面还有空行或者至少得有个空格,
也就是说,如果想要多个sql文件都能够按顺序连贯执行成功,
前面的sql文件最后一行sql语句不能是不含“;”结尾并且后面不含空行或空格等,
不然将会阻断后面sql文件的执行。(其实应该还要满足一个条件才会出我遇到的这个问题,也就是:后面一个sql文件恰恰首行也不是以空格或空行开头的,该有
多大的巧合才会遇到啊,
)
这个是我实际应用中遇到的问题,都怪我当时手贱,整理优化sql时把某个文件里面的一些空行删掉了,恰恰有个没有以“;”结尾的sql语句就成了最后一行,
如果是A文件或者B文件都分别单独执行时都没有任何问题,
但恰恰是通过 @sql语句路径的方式执行时,AB连起来执行就出了问题,
后来经过排查才发现,A文件最后一行sql语句没有以“;”结束,
有人可能会说了,在plsql中经常很多语句不用“;”结束一样可以执行,甚至多行语句一起执行,最后一行语句也没有“;”一样可以执行,的确这样是可以的,
但是有一点需要注意:
最后一行语句没有“;”,但至少这最后一行后面还有空行或者至少得有个空格,
也就是说,如果想要多个sql文件都能够按顺序连贯执行成功,
前面的sql文件最后一行sql语句不能是不含“;”结尾并且后面不含空行或空格等,
不然将会阻断后面sql文件的执行。(其实应该还要满足一个条件才会出我遇到的这个问题,也就是:后面一个sql文件恰恰首行也不是以空格或空行开头的,该有
多大的巧合才会遇到啊,
)
这个是我实际应用中遇到的问题,都怪我当时手贱,整理优化sql时把某个文件里面的一些空行删掉了,恰恰有个没有以“;”结尾的sql语句就成了最后一行,
相关文章推荐
- mysql版本不同所导致SQL语句执行错误的问题
- 通过sql文件执行语句
- Java:对于Sql语句执行方式不同而出现的问题!列名: 'false' 无效
- 通过sqlplus执行*.sql文件时常见的问题总结
- 一条执行4秒的sql语句导致的系统问题 (转)
- document.write 方式引入外部 JS 文件导致脚本程序执行顺序不同以及 DOM 树更新延迟问题
- bat执行文件路径问题
- <util:properties/>加载的配置文件中有中文导致乱码,如何通过分析源码解决问题?
- 如何把一个sql文件里的内容通过php代码执行
- plsql 通过修改配置文件的方式实现数据库的连接
- 通过批处理文件(.bat)执行.sql文件
- 解决存储过程中拼接的SQL字符串超长导致sql语句被截取的问题
- 如何在 db2 管理器中执行一个包含 sql 语句的脚本文件
- 通过分析SQL语句的执行计划优化SQL(总结)
- 如何在控制台输出mybatis所执行的SQL语句(配置LOG4J文件)
- 两条SQL语句分别在上线系统与测试系统中执行,一条在上线中通过测试通不过,一条在上线中通不过测试中通过
- 通过rails console执行sql语句
- 在SQL 2008中总是出现问题:执行Transact-SQL语句或批处理时发生异常。如何解决?
- 两种方式:mysql查看正在执行的sql语句
- webpack打包过程中因为图片的路径导致的问题