3

我需要从包含混合数据的单个 csv 文件中加载 2 个数据库表。我还想使用外键关系维护父子关系。

下面是输入 csv 文件的示例,

<name>,<title>,<department>,<location>
John,Developer,IT, Florida
Mike,Designer,Sales,Nevada
Chris,Designer,Sales,Nevada

下面是2个表结构。Employee 表有 dept_id 作为外键。部门表将有唯一的名称(不重复)。根据上面的示例 csv,它应该有 2 个条目(IT、Sales)。

DEPARTMENT
-------------
id
name
location


EMPLOYEE
---------
id
name
title
dept_id

我对使用 Kettle 完全陌生,任何指针都将不胜感激。

4

1 回答 1

1

这很容易。你下载spoon并启动它了吗(创建转换的编辑器)

  1. 创建文本文件输入
  2. 将文本文件输入中的数据复制到按部门分组,然后到插入/更新步骤以获取您的 DEPARTMENT 表
  3. 将文本文件输入中的数据复制到另一个插入/更新表步骤以创建员工表

至于 ID,如果您愿意,您可以允许数据库将其生成为自动编号字段 - 并根据独特要求进行查找。

我强烈建议下载该工具并玩一玩——一旦开始,它就变得如此简单。

于 2011-03-24T10:54:24.560 回答