SSIS Error Handling : In SQL Server Integration Services, errors might occur when we are extracting data from a source, or loading data into a destination, or when you are performing a transformation. It is because of the unexpected data, and it is a bad practice to fail the package. To handle these situations, SSIS introduced the concept called Error Handling. Let’s see how to configure Error Handling in SSIS with an example.
For the SSIS Error Handling demonstration purpose, we will Export data present in the Employee.xls to SQL Server database table, and configure error handling at Data Conversion. Below screenshot will show you the data present in the Employee Excel file
From the above screenshot, you can see that Occupation of EmpId 2, 13, 14 is larger than the length 255
Error Handling in SSIS Example
Drag and drop the data flow task from the toolbox to control flow and change the name as Error Handling in SSIS.
Double click on it will open the data flow tab. Now, Drag and drop Excel Source, Data Conversion Transformation, OLEDB Destination from SSIS toolbox into the data flow region
Double click on Excel source will open the connection manager settings and provides an option to select the table holding the source data. Here, we are choosing the Employees.xls file present in the file system.
From the above screenshot, you can observe that we are selecting the Employee_Destination table present in the Employee.xls file
Click ok and drag the blue arrow from Excel Source to Data Conversion Transformation. It allows the transformation to use the source data.
Next, please double click on the Data Conversion Transformation to edit and convert our source columns data type to the required data type with length.
Here we are leaving the Occupation length as 255 because we want to fail the package deliberately.
Now we have to provide the destination table details. So double-click on the OLE DB Destination and provide the required information. As you can see from the below, we selected the Duplicate Employee Error Handler table.
Click on the Mappings tab to check whether the source columns exactly mapped to the destination columns.
Click OK to close the above window.
Configure Error Handling in SSIS
To configure Error Handling in SSIS, drag and drop another OLE DB destination to store the error output. Next, drag the Red line from Data Conversion (SSIS Error Output) to OLE DB Destination 1.
Dragging the Error output on OLEDB Destination will open the following window. You have to use this window to configure the error handling in SSIS. By default, all the columns are pointed to Fail component property
Error Output provides three SSIS Error Handling options:
- Fail Component: If there is an error, then the transformation, source, destinations, etc., will fail.
- Ignore Failure: It will ignore the row’s failures.
- Redirect Rows: It returns the successful rows to the specified destination and failed rows to failed output. It will not fail the task.
Please change the option to Redirect Row for both Errors and Truncation columns.
Click OK to close the Configure Error Output window.
Double-click on the OLE DB Destination1 will open the Destination Editor. For the time being, we are creating a new table using the New button.
Click on the Mappings tab to verify whether the source columns exactly mapped to the destination columns or not.
Click OK to finish configuring the OLE-DB destination. The below screenshot is the final SSIS Error Handling package.
Let us run the Error Handling In SSIS package. As you can see from the below screenshot, it is redirecting 11 rows (successful) to OLE DB Destination, and 3 rows to the error output.
Please open the SQL Server Management Studio to check the SSIS Error Handling package result.
Next, open the second table to check the records returned by the Error.