【问题标题】:Insert foriegn keys from different tables to one table in sql server将不同表的外键插入sql server中的一个表
【发布时间】:2019-03-26 02:49:19
【问题描述】:

我正在使用 SSIS 将数据从 Excel 文件传输到 Stagingtable,并且我有 8 个不同的表。从 StagingTable 我将数据插入到不同的表中。 现在我有一个表,其中包含来自 Staging 表的一些数据,而且我需要将所有其他表的外键插入到该表中(就像事实表一样)。 我能够将数据填充到所有表中,但我无法将所有表的外键填充到事实表中。 我如何获取外键并插入它?

我希望将外键插入事实表中。

【问题讨论】:

    标签: sql-server bulkinsert


    【解决方案1】:

    首先填充维度表以便生成外键,然后在填充事实表以获取外键时在键值上连接它们。

    例如,如果您要从 Excel 源中导入名为 John Smith 的员工,请先将 John Smith 插入到 Employee 表中。

    然后,当您将 John Smith 插入事实表时,在 EmployeeName='John Smith' 上连接到 Employee 表,以获取他的 EmployeeID 以插入到事实表中。

    【讨论】:

    • 我添加到维度表中的数据不会再插入到事实表中。例如,如果我在联系人表中插入员工的联系人,而不是联系人表中没有员工的姓名或我的联系人,它将只有数据,但没有人知道哪个对应。现在,当我将员工姓名添加到事实表中时,我需要与特定员工对应的联系人外键。
    • 我不明白您所描述的内容如何可能存在。请编辑您的问题,并提供一个视觉示例来说明您要描述的内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    • 2016-05-10
    • 2012-05-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多