Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Refresh destination schema metadata in Integration Services

I have been working on a huge ETL project with 150+ tables and during the design I had to make a major change on destination column names and data types for a couple of tables.

My problem is that I can't get SSIS to see the new schema for the tables I changed. So I would like to know how can I get SSIS to refresh this schema? I find it kind of ridiculous that there no way to tell SSIS to update the metadata from database schema, especially for database migration.

Recreating the project from scratch is out of question because I already spent some hours on it. Also changing manually the 400+ columns I changed is also not an option.

like image 364
Ucodia Avatar asked Jun 11 '12 08:06

Ucodia


People also ask

How to refresh metadata in SSIS?

To reset the metadata on data sources, change the source to a table or query that has no matching column names and then view columns in the data source. This will delete and recreate the metadata. Then swith the source back to the changed source you are trying to refresh metadata for and view columns again.

How do you refresh SSIS?

You will need to open the SSIS package itself. From this point, go to any component that uses this object, right-click this and select Show Advanced Editor... then press the Refresh button on the Connection Manager pane to update the metadata.

What is metadata in SSIS package?

1. 1) Metadata is al about data about data is the well known fact. Now when you consider SQL server , there are many system tables that maintain the data about the data that is lying in the user databases. 2) In a simialr way, the metadata in SSIS. Logging also somes into picture here.


1 Answers

Following my previous auto-answer, I finally found what was preventing the metadata from being refreshed.

When I originally modified my database, I actually executed another script that was making a DROP on the table and then a CREATE TABLE to recreate the table from scratch. There, SSIS was never able to detect changes and I had to do all the things in my other answer.

Later today I had to make some minor modification and this time I opted for an ALTER TABLE. Magically, this time SSIS detected all the changes even notifying me to refresh columns from the advanced editor, which worked fine.

So basically all these issues has been caused by my poor knowledge about DBA and its best practices.

like image 200
Ucodia Avatar answered Sep 28 '22 07:09

Ucodia