In this article, we show you how to Delete Data using OLE DB Command Transformation in SSIS. Please refer to OLE DB Command Transformation in SSIS article to insert data using OLE DB Command Transformation and Update Data using the OLEDB Command Transformation article to know the Update operations.
Before we start designing the SSIS Delete Data Using OLEDB Command Transformation Package let me show you the Destination Table in [SSIS Tutorials] Database
If you observe the above Data, we have NULL values for the English Description column data. In this example, we will delete all the rows with No description data using SSIS OLE DB Destination Transformation
Delete Data Using OLEDB Command Transformation in SSIS
Drag and drop the Data Flow Task from the toolbox to the control flow region. And rename it as Delete Data using OLEDB Command Transformation in SSIS.
Double click on it will open the data flow tab. Next, Drag and drop OLE DB Source and OLE DB Command transformation from the toolbox to the data flow region.
Double click on OLE DB source in the data flow region will open the connection manager settings and allows us to select the required table.
And the SQL Command we used for this SSIS Delete Data Using OLEDB Command Transformation is
SELECT [ProductKey] ,[EnglishProductName] ,[StandardCost] ,[Color] ,[ListPrice] ,[DealerPrice] ,[EnglishDescription] FROM [SSIS Tutorials].[dbo].[Products] WHERE [EnglishDescription] IS NULL
Click on the columns tab to verify the columns and uncheck the unwanted columns.
Drag the OLE DB Source Output arrow on to the OLE DB Command Transformation to perform transformations on the source data.
STEP 5: Double click on the OLE DB Command Transformation opens the Advanced Editor to configure it.
Within the Connection Managers tab, we are selecting the already created OLE DB Connection from the list. Please refer to the OLE DB Connection Manager in the SSIS article to configure the connection manager.
Within the Component Properties, write the SQL Statement we have to perform. Please choose the SqlCommand property and click on the browse button (… button)
Once you click on the browse button, a String Value Editor window will be opened to write the SQL Statement. In this example, we are deleting the values in the products table.
SQL Statement we used for SSIS Delete Data Using OLEDB Command Transformation is
DELETE FROM [SSIS Tutorials].[dbo].[Products] WHERE [ProductKey] = ?
Within the Column Mapping, assign the appropriate column name to the parameters.
From the above screenshot, see that the Param_0 represents the first question mark, which is [ProductKey] column from the source.
Click ok to finish configuring the Delete Data Using OLEDB Command Transformation in SSIS package. Let us Run the package
Let us open the SQL Server Management Studio and check whether we successfully deleted the rows with No description or not.
Now let us look at the Final data. If you observe the ProductKey column, it started with 210 instead of 1 because the OLE DB Command Transformation deletes all the rows before that.