Ta bort semikolonet i QUERY parameter.:
QUERY=TABLE1,TABLE2:"where TABLE1_STARTTIME >= TO_DATE('01-AUG-2015','dd-mon-yyyy')
and TABLE2_STARTIME >= TO_DATE('01-AUG-2015','dd-mon-yyyy')"
Till en sidoanteckning:
Inte direkt relaterat till ditt problem. Men kom ihåg TO_DATE är NLS-beroende . Du bör ange NLS_DATE_LANGUAGE , annars kan din fråga misslyckas för ett annat nls_date_language.
Till exempel,
SQL> alter session set nls_date_language='FRENCH';
Session altered.
SQL> SELECT TO_DATE('01-AUG-2015','dd-mon-yyyy') FROM DUAL;
SELECT TO_DATE('01-AUG-2015','dd-mon-yyyy') FROM DUAL
*
ERROR at line 1:
ORA-01843: not a valid month
SQL> SELECT TO_DATE('01-AUG-2015','dd-mon-yyyy', 'nls_date_language=ENGLISH') FROM DUAL;
TO_DATE('01
-----------
01-AO█T -15
Jag skulle föredra att använda ANSI Date literal , när du inte har någon tidsdel . Det är NLS-oberoende . Den använder ett fast format ÅÅÅÅ-MM-DD .
Till exempel,
SQL> alter session set nls_date_language='FRENCH';
Session altered.
SQL> SELECT DATE '2015-08-01' FROM DUAL;
DATE'2015-0
-----------
01-AO█T -15
SQL> alter session set nls_date_language='AMERICAN';
Session altered.
SQL> SELECT DATE '2015-08-01' FROM DUAL;
DATE'2015
---------
01-AUG-15