2017-05-31 2 views
0

J'ai besoin d'insérer la date et l'heure actuelles dans la base de données Oracle via un appel de procédure stockée. J'ai essayé # [server.dateTime]. Aussi essayé # [fonction: date], mais les deux ne parviennent pas avec l'erreur ci-dessousInsérer la date/heure actuelle dans la base de données Oracle à l'aide de la procédure stockée

Message : Invalid conversion requested (java.sql.SQLException). SQL Code : 17132 Payload Type : org.mule.util.CaseInsensitiveHashMap SQL State : 99999

Ci-dessous est ma config. Merci pour toute aide.

<batch:step name="UpdateDatabase"> 
<db:stored-procedure config-ref="Oracle_Configuration" doc:name="UpdateDatabase"> 
<db:parameterized-query><![CDATA[{call 
tokens.UpdateData(:P_ID,:P_TOKEN,:P_CC,:P_DATE_UPDATED,:P_UPDATED_BY,:P_RESULT)}]]></db:parameterized-query> 
<db:in-param name="P_ID" type="INTEGER" value="123456"/> 
<db:in-param name="P_TOKEN" type="VARCHAR" value="test_token"/> 
<db:in-param name="P_CC" type="VARCHAR" value="test_cc"/> 
<db:in-param name="P_DATE_UPDATED" type="DATE" value="# 
[server.dateTime]"/> 
<db:in-param name="P_UPDATED_BY" type="VARCHAR" value="migrator"/> 
<db:out-param name="P_RESULT" type="NUMERIC"/> 
</db:stored-procedure> 
</batch:step> 
+0

Essayez avec '# [fonction: maintenant]' –

+0

Merci cela a fonctionné. Aussi, comment puis-je passer une date personnalisée? – user3366906

+0

Que voulez-vous dire par date personnalisée? Formatage? –

Répondre

0

Utilisez des expressions MEL au lieu de la fonction:

#[server.dateTime.format('dd-MM-yy HH:mm:ss')]

0

Vous pouvez utiliser l'expression suivante: #[function:datestamp:dd-MM-yy HH:mm:ss]

0

utilisation # [fonction: datestamp: dd-MM-yy HH: mm: ss]