[20150611]优化sql遇到问题.txt
--昨天在优化sql语句时遇到一个问题,做1个记录。
--实际上空行作怪。
$ cat ax.sql
select * from emp
union all
select * from emp1;
SCOTT@test> @ax
SP2-0042: unknown command "union all" - rest of line ignored.
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ------------------- ---------- ---------- ----------
7369 SMITH CLERK 7902 1980-12-17 00:00:00 800 20
7566 JONES MANAGER 7839 1981-04-02 00:00:00 2975 20
7788 SCOTT ANALYST 7566 1987-04-19 00:00:00 3000 20
7876 ADAMS CLERK 7788 1987-05-23 00:00:00 1100 20
7902 FORD ANALYST 7566 1981-12-03 00:00:00 3000 20
...
--自己没有仔细看出错提示,sql语句缺省不允许出现。
--参考以前写的blog。
http://blog.itpub.net/267265/viewspace-712957/
--实际上加入或者取消空行,或者加入如下set sqlblanklines on,就ok了。
$ cat ax.sql
set sqlblanklines on
select * from emp
union all
select * from emp1;
--主要问题是要调整的sql语句太长,自己没有仔细看出错提示,浪费了大量时间,以此做一个记录,说明在PB程序里面有空行是没有问
--题,自己在调整sql时注意。另外还有注意的一个问题是回车换行的问题。
http://blog.itpub.net/267265/viewspace-1297933/
--一些PB的代码,发现有些开发~r,没有~n.导致出现这种情况.
--好久不做优化,看到那些垃圾代码真TMD恶心!!!看着都想吐。