13

我想在 Talend 中写入数据库时​​执行事务,但不知道如何。我尝试了调色板中的各种组件,但无法执行。我将不胜感激任何与此主题相关的帮助甚至更好的教程。

谢谢!

4

2 回答 2

14

Talend 支持在写入数据库时​​进行事务回滚和提交。

我们以 Mysql 为例:在作业开始时使用 tMysqlConnection 创建数据库连接,如果前一个子作业正常工作,则使用 tMysqlCommit 提交更改并关闭,如果前一个子作业工作失败,则使用 tMysqlRollback 回滚更改,简单工作看起来像:

tMysqlConnection_1
    |
onsubjobok
    |
tFileInputDelimited--main---tMysqlOutput
    |
onsubjobok---tMysqlCommit
onsubjoberror---tMysqlRollback

在 tMysqlOutput 上,检查选项using an existing connection

于 2011-11-26T02:04:51.630 回答
2

在 Talend 中有多种将数据写入数据库的方法。您可以选择使用单独的连接组件(使用现有连接)或使用内置连接。当您使用单独的连接组件时,您需要使用 tMSSqlCommit 组件(或其他数据库类型的类似组件)显式提交您的事务。如果您使用内置的,则事务会在没有 tMSSqlCommit 组件(或其他数据库类型的类似组件)的情况下自动提交。

我为您准备了更详细的教程,但需要声誉点才能发布图像。我将尝试将它们发送到文件服务器,以便我可以链接到它们并发布更详细的答案。

于 2015-04-24T21:39:22.683 回答