プレーン JDBC を介して Oracle 10g データベースにアクセスする SAP Netweaver にデプロイされた Java Web アプリケーションがあります。クエリが次のエラーを引き起こした数日前まで、アプリケーションは正常に動作していました。
ORA-01843: not a valid month
問題を引き起こしているクエリは次のとおりです。
SELECT *
FROM (SELECT *
FROM (SELECT inspeccion.sociedad_id,
inspeccion_id,
estado_id,
(SELECT des_estado
FROM estado
WHERE estado.estado_id = inspeccion.estado_id)
des_estado,
(SELECT numero_secuencia
FROM estado
WHERE estado.estado_id = inspeccion.estado_id)
numero_secuencia,
planta_id,
(SELECT des_planta
FROM planta
WHERE planta.planta_id = inspeccion.planta_id)
des_planta,
area_id,
(SELECT des_area
FROM area
WHERE area.area_id = inspeccion.area_id) des_area
,
igp_id,
'-'
nom_lider,
nom_inspector,
nom_responsable,
To_char(fecha_inspeccion, 'DD/MM/YYYY')
fecha_inspeccion,
observacion,
recomendacion
FROM inspeccion) inspeccion) t_inspeccion
WHERE estado_id NOT IN ( 10 )
AND t_inspeccion.estado_id IN ( 11, 12 )
AND t_inspeccion.planta_id = 42
AND t_inspeccion.fecha_inspeccion >= To_date('01/11/2010', 'dd/mm/yyyy')
AND t_inspeccion.sociedad_id = '0101'
ORDER BY t_inspeccion.numero_secuencia,
t_inspeccion.fecha_inspeccion
このステートメントを疑っていましたTo_date('01/11/2010', 'dd/mm/yyyy')
が、DBVisualizer を使用してクエリを実行すると、まったく問題はありません。
私はここでちょっと迷っています。クエリをいじっている DB 設定があるか、SAP Netweaver の設定が原因ではないでしょうか? それとも、Oracle ドライバーの問題でしょうか?