In this article, we will show you how to transfer SQL Server table Structures in SSIS without data from one Database to another Database using the Transfer SQL Server Objects task. If you want to transfer SQL Server tables with data, Please refer to Transfer Tables with Data article.
Transfer Table Structures Using Transfer SQL Server Objects Task in SSIS
If you observe the below screenshot, we have one Empty Database (TRANSFERDBTASKS). In this example, we are going to transfer a few tables without data from [Adventure Works DW 2014] database to [TRANSFER DB TASKS] Database using the Transfer SQL server Object Task in SSIS.
STEP 1: Open BIDS and Drag and drop the Transfer SQL Server Objects Task from the toolbox to control flow.
Double click on the Transfer SQL Server Objects will open the Editor to configure it.
General Tab: In this tab, you can write your Name and description as per the project requirements.
Here we changed the Name and description to show you the functionality of them.
Click on the Objects Tab
STEP 2: Select the SourceConnection property and click on it to create a New connection. If you already created, then select it.
Once you click on <New connection…> an SMO Connection Manager Editor window will be opened to configure the connection.
STEP 3: For this example, we are selecting our localhost instance, and we are using Windows Authentication. If you are working for an organization, then select the Server Authentication and provide the credentials.
Click on the Test connection button to check whether the connection is throwing errors or not.
STEP 4: Click on the SourceDatabase option and select the database you want to use. For now, we are selecting [Adventure works DW 2014].
STEP 5: Select the DestinationConnection property and click on to create a New connection. If you created already, select it.
We already mentioned localhost instance in SourceConnection, and here also we are going to use the same instance. If you want to create a new one, click on will open SMO Connection Manager Editor window to configure the connection.
STEP 6: Click on the DestinationDatabase option and select the database you want to use. For now, we are selecting [TRANSFER DB TASKS] as shown below.
STEP 7: Click on the CopyData property and check whether the option is False or not.Because, In this example, we are willing to transfer Database tables without Data from source to destination.
By keeping the CopyData property opportunity to False, the Transfer SQL Server Objects Task will copy the tables without data.
STEP 8: If you require to copy all the objects (views, function, stored procedures, tables) from the source database, then set the CopyAllObjects option to True. In this example, We are going to send a few tables. So we leave it to default False.
If we set CopyAllObjects option to False, next property ObjectsToCopy will get enabled.
STEP 9: Click on the ObjectsToCopy property to configure it. ObjectsToCopy property will explore many options of the Transfer SQL Server Objects Task. Let us concentrate on options that belong to or related to this example. In this example, Our requirement is transferring the tables. So we have to understand the first two options only such as CopyAllTables and TableList.
If you require to copy all the tables from the source database, then set the CopyAllTables option to True. In this example, We are going to send a few tables. So we leave it to default False.
NOTE: If you set the CopyAllTables option to True, then there is no point in select the tables from TableList option.
STEP 10: Click on the TableList option and click on the collections. Once you click on the (…) button besides Collections, it will open the Select Tables window to select the available tables from the source connection.
For this example, we are selecting three tables ([Dim Product Category],[Dim Product Subcategory], and [Dim Reseller]) only. But you can try with some more tables.
STEP 11: Click ok to close the Select Tables window and then click ok to finish configuring the Transfer SQL Server Objects Task.
Let us run the SSIS package to see whether we successfully transferred the table structures without Data from source to destination.
Let’s open the Management Studio and check for the tables.
From the above screenshot, you can observe that we just transferred the SQL Server table structures in SSIS but not the data.