csv - 将CSV数据加载到多个表中

标签 csv kettle

我需要从包含混合数据的单个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,销售)。
DEPARTMENT
-------------
id
name
location


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

对于使用Kettle,我是一个全新的人,任何指针都将不胜感激。

最佳答案

这很容易。您是否下载了spoon并启动了它(用于创建转换的编辑器)

  • 创建一个文本文件输入
  • 将文本文件输入中的数据一步一步地复制到部门,然后再插入/更新步骤以获取DEPARTMENT表
  • 将数据从文本文件输入复制到另一个插入/更新表步骤,以创建员工表

  • 至于ID,您可以根据需要允许数据库将其生成为自动编号字段,并根据唯一要求进行查找。

    我强烈建议您下载该工具并开始玩-一旦开始就非常容易。

    关于csv - 将CSV数据加载到多个表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5409318/

    相关文章:

    python - 通过合并两列数据来计算有多少个唯一标识符?

    mysql - 将列从 CSV 导入现有的 MySQL 表

    pentaho - 从 Pentaho 中的两个输入文件生成 1 个带有两个选项卡的 Excel 文件

    pentaho - 使用 Pentaho Kettle/PDI 将行列转换为行

    bash - 根据字段值将一个 CSV 拆分为多个文件

    python - csv中的字符串替换

    java - 将 Pentaho Kettle 集成到 Java 应用程序中时,为什么 MongoDB 输出不起作用?

    java - 在 Spoon (Pentaho Kettle) 中执行 .jar 文件

    java - 用于基于流程的编程的 Pentaho Kettle

    c - 如何通过C在csv文件的行尾写入新字符串