在本章中,我们将探讨 Talend 的 tConvertType 元素以执行数据类型转换。在实际操作中,我们不会获得所需数据类型的数据,因此我们需要使用 Talend 数据类型转换字段根据业务需求进行转换。例如,日期和时间可能是字符串格式,或者销售额是字符串格式。在这种情况下,我们使用 Talend 数据类型转换转换。
为了演示此 Talend 数据类型转换字段,我们使用下面显示的文本文件。

Talend 数据类型转换示例
众所周知,我们需要 tFileInputDelimited 字段来处理文本文件。因此,将其拖动并从文件系统中选择文本文件。这里我们直接使用该文件,但您也可以选择存储库文件。
在这里,您可以看到所有列的模式。

接下来,将 Talend tConvertType 拖放到作业设计区域。从工具提示中可以看到,tConvertType 将一种 Talend Java 类型转换为另一种。

请将主行连接到 Talend tConvertType。接下来,单击“编辑模式”按钮以更改所需列的数据类型。如果看不到源列,请单击“同步列”按钮。
我将 EmpID 更改为整数,年度收入和销售额更改为 Double,Hire Date 更改为 Date 数据类型。不要忘记分配适当的长度、精度和日期格式。

请勾选其他两个选项“自动转换”和“转换前将空值设置为 Null”(重要)。

让我们在 SQL Server 中创建一个空的 表。或者,您可以选择现有表。
CREATE TABLE [dbo].[Talend_ConvertType](
EmpID int NOT NULL,
FirstName nvarchar(255) NULL,
LastName nvarchar(255) NULL,
Education nvarchar(255) NULL,
Occupation nvarchar(255) NULL,
YearlyIncome float NULL,
Sales float NULL,
HireDate datetime NULL
)
我们使用 tDBOutput 连接到 SQL Server。在这里,我们使用的是存储库连接。接下来,我们选择了新创建的表,即 Talend_ConvertType。

单击“编辑模式”以检查输入和输出列。

让我们运行 Talend 数据类型转换作业。

在 Management Studio 中,您可以看到数据。

这次,我们取消勾选了“自动转换”选项,并对手动转换了列。

再次运行 Talend 数据类型转换作业。
