如何通过Datastage作业运行sql之前更改会话

时间:2019-07-10 20:33:44

标签: oracle datastage

在执行数据阶段作业中使用的oracle连接器中的主要sql之前,我需要更改会话。

我尝试从sql选项卡前更改会话,如下所示。 更改会话集star_transformation_enabled = TRUE;

当我从sql developer更改会话并运行我的主sql时,它会在20分钟内执行,但是从datastage作业开始,该作业的运行时间超过20小时,这使我感觉我的alter session不能正常工作数据阶段。

1 个答案:

答案 0 :(得分:0)

好的,我明白了。

您可以使用以下技术来更改PL/SQL block中的会话。

BEGIN
EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_DATE_FORMAT = ''DD-MON-RRRR HH24:MI:SS'' ';
DBMS_OUTPUT.PUT_LINE('1 --> ' || SYSDATE);
EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_DATE_FORMAT = ''DD/MON/RRRR HH24:MI:SS'' ';
DBMS_OUTPUT.PUT_LINE('2 --> ' || SYSDATE);
END;
/

--
Output
--

dbms_output:
1 --> 13-JUL-2019 04:52:58
2 --> 13/JUL/2019 04:52:58

db<>fiddle demo

干杯!