【问题标题】:Copying multiple tables using SSIS Package [duplicate]使用 SSIS 包复制多个表 [重复]
【发布时间】:2014-12-07 13:23:07
【问题描述】:

我正在尝试设计一个 SSIS 包,它将大约 50 多个表从 ODBC 数据源(QuickBooks DB)复制到 SQL DB。 我应该创建 50 个数据流任务来执行此操作吗? 做这个的最好方式是什么 ? 将 DFT 放入循环中并读取表格?还是 50+ 数据流任务???

【问题讨论】:

    标签: ssis odbc quickbooks dataflowtask


    【解决方案1】:

    您可以创建 50 个数据流任务,但不是必须的。

    在同一个 DFT 中可以有多个独立的源-目标。 这将不那么灵活,因为您可以从包中单独运行单个 DFT(在调试时),但您不能在不修改它的情况下运行一段 DFT(据我所知)。

    根据您选择的选项,我发现有几种方法可以让您免于处理 50 多张桌子的日常工作:

    a) 让SQL Server Import and Export Wizard 为您完成无聊的工作。 这个工具最好的地方是它可以创建一个 .dtsx 包。

    因此,使用向导,您可以:

    • 选择从 ODBC 数据源导入所有 50 多个表
    • 不要一直运行向导,而是将结果保存为 .dtsx 包。
    • 使用 SQL Server Data Tools 在 Visual Studio 中打开包
    • 根据您的需要修改包(例如,对不同 DFT 中的表进行逻辑重组,添加任何其他转换)。

    b) 手动编辑包代码(可能需要一些BIML 知识):

    • 在带有 SQL Server Data Tools 的 Visual Studio 中,创建 1 个 DFT 作为您的示例。
    • 在解决方案资源管理器中,右键单击您的包,选择查看代码。
    • 复制/粘贴 DFT 50 多次,更改表名,或者您甚至可以设法以某种方式自动化 BIML 以避免复制/粘贴

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-14
      • 1970-01-01
      • 2021-03-18
      • 1970-01-01
      • 1970-01-01
      • 2020-11-27
      相关资源
      最近更新 更多