2016-11-18 31 views
0

我想写选择并插入查询出使用数据库连接器相同的数据库3个表。我想知道是否有替代或使用1数据库连接器如何完成?写数据库连接多个查询在骡子

我结束了使用5数据库连接器。但我认为这使得流程看起来很复杂。有没有其他的方式来做到这一点。

回答

0

你会以错误的方式:)
它可以通过一个DB连接器执行3个不同的操作来实现。
请通过文件放在这里: - https://docs.mulesoft.com/mule-user-guide/v/3.8/database-connector

您需要定义一个全局DB连接器连接你的数据库: -

<db:generic-config name="GlobalDB_Config" url="jdbc:sqlserver://${mssql.server}:${mssql.port};databaseName=${mssql.database};user=${mssql.user};password=${mssql.password}" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" doc:name="Generic Database Configuration"/>  

,然后就可以执行不同的操作(选择,插入,更新等)在使用不同的数据库组件是指相同的全局DB连接您的流量: -

<db:insert config-ref="GlobalDB_Config"> 
    <db:parameterized-query>INSERT INTO TABLE1(POSITION, NAME) VALUES (777, #[payload])</db:parameterized-query> 
</db:insert>  

<db:select config-ref="GlobalDB_Config"> 
    <db:parameterized-query><![CDATA[SELECT POSITION from TABLE1 WHERE NAME = '#[message.inboundProperties['NAME']]></db:parameterized-query> 
</db:select> 
+0

我正在创建一个全局连接器,并将其引用到多个数据库连接器。但我的问题是有没有办法使用1分贝连接器?因为如果我们看到流量,那么它有4-5分贝连接器用于4-5次操作。 –

+0

那不叫连接器..连接器是用您的数据库连接参数,如数据库URL,数据库的用户名,密码,数据库等全局定义的一个..被称为数据库组件 –

+0

我,你在你的流量对于DB操作定义的东西所述db连接器,因为当您将光标悬停在连接器选项卡上时,工具箱中会显示db连接器。 –