xmltype 列に挿入するストアド プロシージャがあります。列は、日時型の列を持つスキーマを参照しています。日付は次のようにフォーマットする必要があります: YYYY-MM-DD"T"HH24:MI:SS
匿名ブロックを介してテストすると、ALTER SESSION を発行して時間形式を現在のセッションに変更できます
alter session set nls_timestamp_format = 'YYYY-MM-DD"T"HH24:MI:SS';
insert into table1 (id, xmlcolumn) values (1, updatexml(
'/root/order/id/text()', p_order_id,
'/root/order/date/text()', to_timestamp(sysdate,'DD-MON-RRRRHH:MI:SS.FF')
));
ただし、これをストアド プロシージャに移動すると、Oracle によって ALTER SESSION を使用できなくなります。
DBMS_SESSION.SET_NLS('nls_timestamp_format','YYYY-MM-DD"T"HH24:MI:SS');
しかし、SQL Developerは無効なオプションと言います。
私はOracleに非常に慣れていません(SQL DB Devであるため)、時間形式を設定する方法についての指針はありますか?
前もって感謝します