Dynamic Database connection in SSIS 2012
Posted on 2016-09-29
We have a few databases that have almost same tables with same structure, but with the data from different clients. The tables are created based off the data received from the clients. We cannot host the data for all clients in one database. Each one has to have a separate database. We have a separate VS 2012 solution that has a master package which in turn calls several SSIS packages to load the tables. We have one SSIS package per table, as we have several validations that would be need to performed during the loads.
We are following project deployment model .We have Development, Testing and Production servers and we are using environment variables in the respective SSIS Projects.
However, I have a requirement such that a VS solution that's created to load the data from one client can be reused for loading data from another client just by changing the database name in the connection and not the connection manager itself.This database connection needs to be changed manually, just at one place so that the packages
would point to the changed database name.
For example: If Project A in solutionA has a connection manager that points to DBName1 to load data from client1,when I reuse this solution to load data from Client2 with same table structures,we should change the name of the database DBName1 to DBName2, just at one place and the Database in the connection manager should point to DBName2 instead of Database1.
Not sure, how to implement this. Any logic/code is greatly appreciated.
Thanks a million in advance! It's a bit urgent!