1.新建转换
a.最终效果
使用的数据库表 test_table 表创建语句:
CREATE TABLE `test_db`.`test_table` (
`varchar1` varchar(255) CHARACTER SET armscii8 COLLATE armscii8_bin NULL DEFAULT NULL,
`varchar2` varchar(255) CHARACTER SET armscii8 COLLATE armscii8_bin NULL DEFAULT NULL,
`varchar3` varchar(255) CHARACTER SET armscii8 COLLATE armscii8_bin NULL DEFAULT NULL,
`varchar4` varchar(255) CHARACTER SET armscii8 COLLATE armscii8_bin NULL DEFAULT NULL,
`datetime1` datetime NULL DEFAULT NULL,
`datetime2` datetime NULL DEFAULT NULL,
`date1` date NULL DEFAULT NULL,
`date2` date NULL DEFAULT NULL,
`import_time` datetime NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE = InnoDB CHARACTER SET = armscii8 COLLATE = armscii8_bin ROW_FORMAT = Dynamic;
b. 空白处鼠标右键输入参数,参数名、默认值可随意命名但需符合规范
c.各组件内容如下
表输入:
注:需勾选替换sql语句中的变量,否则不会将转换中步骤b中定义的变量转换成对应的值
插入 / 更新 2:
阻塞组件:
**注:**使用阻塞组件的目的是让前面所有的步骤执行完毕再运行sql运行组件中需要运行的语句,如果不使用该组件的话,步骤的执行顺序无法控制。
sql 语句运行组件:
注:需勾选执行每一行
2. 转换文件下载
新建转换,拷贝复制以下语句
<?xml version="1.0" encoding="UTF-8"?>
<transformation-steps>
<steps>
<step>
<name>Block this step until steps finish</name>
<type>BlockUntilStepsFinish</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<steps>
<step>
<name>表输入</name>
<CopyNr>0</CopyNr>
</step