【问题标题】:How to use multiple databases for same data flow task in ssis如何在 ssis 中为同一数据流任务使用多个数据库
【发布时间】:2015-01-09 08:08:04
【问题描述】:

我正在为我工​​作的公司创建一个数据仓库(我是一名实习生,所以没什么太花哨的)。他们有多个具有相同数据库结构的数据库。我正在创建一个数据流任务,它使用 ODBC 连接(因为我使用 MySQL)从数据库中检索表,进行一些转换并将其加载到我设置的新数据库中。 完成整个流程后,我已将来自一个数据库的数据加载到数据仓库中。但是公司已经分配了更多具有完全相同表名等的数据库。有没有一种简单的方法来更改源数据库?每次我想为新数据库运行数据流时,我都不想更改所有 ODBC 源。我还可以复制整个数据流,将其粘贴到另一个数据流中,更改所有源并运行它。这意味着如果公司有 50 个数据库,我将有 50 个数据流,唯一的区别是它们具有不同的数据库名称。但我想知道是否还有其他方法?我不想每次都更改所有的源,因为以后数据库更新时,所有连接都必须手动更改并再次执行。

【问题讨论】:

    标签: database ssis odbc data-warehouse dataflow


    【解决方案1】:

    根据您的包,最好在连接字符串的初始目录(数据库)中(动态)更改数据库名称。

    然后转到连接管理器的属性来更改连接字符串

    表达式 -> 添加属性 -> 初始目录是您的数据库名称,并将其分配给将动态更改的变量

    如果您想更改整体更好地使用 CONNECTION STRING 属性

    数据库ODBC连接的连接字符串为:

    Driver={SQL Server};server=*****;uid=**;database=database_name;Pwd=password
    

    【讨论】:

    • 感谢您的回答,但我不太明白。我是新来的。连接管理器的属性在哪里?我在解决方案资源管理器中看到连接管理器和我的连接,但没有属性?
    • 单击连接管理器,然后按 f4 键,您可以在屏幕右下方看到属性。转到表达式并添加属性并给出表达式值 = 新变量(从上面的用户变量中拖动它)当变量中的值发生变化时,您的连接也会发生变化
    • 是的,这就是我之前所做的,但奇怪的是我只看到位置 > 名称 - 连接管理器。这是我看到的唯一属性:/
    • NVM,我想我找到了,让我测试一下:3
    • 你明白了吗,选择属性作为初始目录并在表达式中分配变量
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-09
    相关资源
    最近更新 更多