How To Import SharePoint List Data Into A Database Table Using SSIS

For a variety of reasons you might need to import data that currently resides in a SharePoint list into a relational database table. Lucky for us there are some SharePoint Web Services we can leverage as data sources. This example will walk through pulling some example data from a SharePoint list I created and storing it in an SQL Server Table.

This walkthrough assumes you have some hands on experience/ knowledge of SQL Server Integration Services (SSIS).

In order to import our SharePoint list data we're going to leverage the "SharePoint List Adapters" for SSIS. You'll need to download them at http://sqlsrvintegrationsrv.codeplex.com/releases/view/17652. Once you've installed "SharePointListAdaptersSetup.msi" you'll probably need to add the new source and destination objects to your toolbox. Start off by making sure you're on the "Data Flow Tab" and then right click the "Choose Items..." option as shown below.

clip_image001[4]

In the new window that comes up, you'll want to select the "SSIS Data Flow Items" tab, and then check "SharePoint List Source" then click OK.

clip_image003[4]

Now that we've added our connection objects to the Toolbox, all we need to do is drag the "SharePoint List Source" object onto our Data Flow canvas and then configure it to point to our list.

clip_image004[4]

Double click on the "SharePoint List Source" object. You'll want to configure the "Site URL" and "Site List Name" of the SharePoint list you're wanting to import (shown below highlighted in yellow).

clip_image006[4]

That's pretty much it. You'll probably also need to convert your column values from Unicode using the SSIS conversion transformation object before directing them to your destination data source. Overall though, pretty simple if you're familiar with SSIS. A quick proof of concept using a list of video games I made worked perfectly the first time.

From SharePoint List:

clip_image007[4]

To database table:

clip_image008[4]

almost effortlessly. Hope this helps.