SSIS Error 0x80004005 Invalid object name.
Applies to: SQL Server 2012 Standard Edition, SQL Server Data Tools 2012.
Problem Description.
After adding an existing package to an existing SSIS project and updating
corresponding project connections, I tried to to run the package and received
the following error message.
TITLE: Package Validation Error
------------------------------
Package Validation Error
------------------------------
ADDITIONAL INFORMATION:
Error at Extract Sample Currency Data [Sample OLE DB Destination [110]]: SSIS
Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code:
0x80004005.
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0"
Hresult: 0x80004005 Description: "Unspecified error".
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0"
Hresult: 0x80004005 Description: "The metadata could not be determined because
every code path results in an error; see previous errors for some of these.".
An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0"
Hresult: 0x80004005 Description: "Invalid object name 'dbo.FactCurrency'.".
Error at Extract Sample Currency Data [Sample OLE DB Destination [110]]: Failed
to open a fastload rowset for "[dbo].[FactCurrency]". Check that the object
exists in the database.
Error at Extract Sample Currency Data [SSIS.Pipeline]: "Sample OLE DB
Destination" failed validation and returned validation status "VS_ISBROKEN".
Error at Extract Sample Currency Data [SSIS.Pipeline]: One or more component
failed validation.
Error at Extract Sample Currency Data: There were errors during task validation.
(Microsoft.DataTransformationServices.VsIntegration)
------------------------------
BUTTONS:
OK
------------------------------
------------------------------------------------------------
Cause
There was an OLEDB Destination task on the Data Flow view of the SSIS package
that needed modification since it was making reference to a table named
FactCurrency that did not exist on the database.
Solution
The reference to the FactCurrency table was changed to the table
FactCurrencyRate as shown in the images below.