Model Context Protocol (MCP) finally gives AI models a way to access the business data needed to make them really useful at work. CData MCP Servers have the depth and performance to make sure AI has access to all of the answers.
Try them now for free →Use the CData SSIS Components to Insert New or Update Existing Microsoft Dataverse Records from SQL Server
Easily push SQL Server data to Microsoft Dataverse using the CData SSIS Components. This example uses an SSIS workflow to either insert new records into Microsoft Dataverse or update existing records with data from a SQL Server database.
SQL Server databases are commonly used to store enterprise records. It is often necessary to move this data to other locations. The CData SSIS Components for Microsoft Dataverse allow you to easily transfer data from SQL Server to Microsoft Dataverse.
This article demonstrates how to use the CData SSIS Components for Microsoft Dataverse inside of a SQL Server Integration Services workflow to export data from SQL Server to Microsoft Dataverse, utilizing a lookup component to find and update any existing records or insert new records.
About Microsoft Dataverse Data Integration
CData provides the easiest way to access and integrate live data from Microsoft Dataverse (formerly the Common Data Service). Customers use CData connectivity to:
- Access both Dataverse Entities and Dataverse system tables to work with exactly the data they need.
- Authenticate securely with Microsoft Dataverse in a variety of ways, including Azure Active Directory, Azure Managed Service Identity credentials, and Azure Service Principal using either a client secret or a certificate.
- Use SQL stored procedures to manage Microsoft Dataverse entities - listing, creating, and removing associations between entities.
CData customers use our Dataverse connectivity solutions for a variety of reasons, whether they're looking to replicate their data into a data warehouse (alongside other data sources)or analyze live Dataverse data from their preferred data tools inside the Microsoft ecosystem (Power BI, Excel, etc.) or with external tools (Tableau, Looker, etc.).
Getting Started
Add the Components
To get started, add a new OLE DB source, CData Microsoft Dataverse lookup, and two CData Microsoft Dataverse destinations (one to handle a lookup with a match and one to handle a lookup without a match) to a new data flow task.

Configure the OLE DB Source
Follow the steps below to specify properties required to connect to the SQL Server instance.
- Open the OLE DB Source and add a new connection. Enter your server and database information here.
- In the Data access mode menu, select "Table or view" and select the table or view to export into Microsoft Dataverse.
- Close the OLE DB Source wizard and connect it to the CData Microsoft Dataverse Destination.
Create a New Connection Manager for Microsoft Dataverse
Follow the steps below to save connection properties in the Connection Manager.
- Create a new Connection manager: In the Connection Manager window, right-click and then click New Connection. The Add SSIS Connection Manager dialog is displayed.
- In the Connection Manager type menu, select the CData Microsoft Dataverse Connection Manager.
- Configure the connection properties. A typical Microsoft Dataverse connection requires:
- User
- Password
- AccessToken
Configure the Microsoft Dataverse Lookup
In the lookup component Transform Editor, define mappings from the SQL Server source table into the Microsoft Dataverse lookup table.
- Double-click the Microsoft Dataverse lookup to open the lookup component editor.
- In the Connection tab, select the Connection manager previously created.
- On the Connection tab, specify the Connection manager (or create a new one) and the table into which the data will be upserted. In this case, you will transfer Account records.
- On the Columns tab, configure the mapping of the primary key from the input columns to the primary key of the lookup columns.
Configure the Microsoft Dataverse Destinations
Using the lookup component, you know which entries from the data source already exist in Microsoft Dataverse and which ones are new. Configure two Microsoft Dataverse components to handle the situation where a match is found and a match is not found.
Lookup Match Destination
If the lookup component returns a match, update the existing record in Microsoft Dataverse.
- Map the Lookup Match Output to a Microsoft Dataverse destination component.
- Double-click the Microsoft Dataverse destination to open the destination component editor.
- In the Connection Manager tab, select the Connection manager previously created.
- Specify the table which will be updated and set the Action to "Update."
- On the Column Mappings tab, configure the mappings from the input columns to the destination columns (be sure to map the SQL Server primary key column to the Microsoft Dataverse primary key column).
Lookup No Match Destination
If the lookup component does not return a match, add a new record to Microsoft Dataverse.
- Map the Lookup No Match Output to a Microsoft Dataverse destination component.
- Double-click the Microsoft Dataverse destination to open the destination component editor.
- In the Connection Manager tab, select the Connection manager previously created.
- Specify the table into which the new record will be inserted and set the Action to "Insert."
- On the Column Mappings tab, configure the mappings from the input columns to the destination columns.
Run the Project
You can now run the project. After the SSIS Task has finished executing, data from your SQL table will be exported to the chosen table.
