データベースコネクタデータ型リファレンス

このトピックでは、データベース入力パラメータと、特定の接続プロバイダに接続している場合に使用できるカスタムデータ型の定義方法について説明します。

パラメータのデータ型の強制

一般的ではありませんが、基礎となる JDBC ドライバで入力パラメータを特定のデータ型に強制的に割り当てることが必要になる場合があります。たとえば、JDBC ドライバで入力のデータ型を特定できない場合や、パラメータがカスタムデータ型の場合、各入力パラメータのデータ型を指定して、強制を適用しなければならないことがあります。

<db:bulk-insert queryTimeout="0" queryTimeoutUnit="SECONDS">
     <db:sql>INSERT INTO PLANET(POSITION, NAME) VALUES (:position, :name)</db:sql>
     <db:parameter-types>
         <db:parameter-type key="name" type="VARCHAR" />
         <db:parameter-type key="position" type="INTEGER" />
     </db:parameter-types>
 </db:bulk-insert>

カスタムデータ型の定義

データベースコネクタテクニカルリファレンスでは、接続プロバイダ (Derby、Oracle など) ごとに専用パラメータと共通パラメータが説明されています。接続プロバイダ要素の子要素で、特定のプロバイダに接続している場合に使用できるカスタムデータ型を定義します。次に例を示します。

<db:config name="dbConfig">
   <db:derby-connection url="jdbc:derby:muleEmbeddedDB;create=true">
       <db:column-types>
           <!-- Derby uses JAVA_OBJECT for UDT-->
           <db:column-type typeName="CONTACT_DETAILS" id="2000"/>
       </db:column-types>
   </db:derby-connection>
</db:config>

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub