You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The [!INCLUDE [tsql-md](tsql-md.md)]code samples in this article use the [!INCLUDE [sssampledbobject-md](sssampledbobject-md.md)] or [!INCLUDE [sssampledbdwobject-md](sssampledbdwobject-md.md)] sample database, which you can download from the [Microsoft SQL Server Samples and Community Projects](https://go.microsoft.com/fwlink/?LinkID=85384) home page.
8
+
The code samples in this article use the [!INCLUDE [sssampledbobject-md](sssampledbobject-md.md)] or [!INCLUDE [sssampledbdwobject-md](sssampledbdwobject-md.md)] sample database, which you can download from the [Microsoft SQL Server Samples and Community Projects](https://go.microsoft.com/fwlink/?LinkID=85384) home page.
In this lesson, you create a simple extract, transform, and load (ETL) package. The package extracts data from a single flat file source, transforms the data using two lookup transformations, and writes the transformed data to a copy of the **FactCurrencyRate** fact table in the [!INCLUDE [sssampledbdwobject-md](../includes/sssampledbdwobject-md.md)] sample database. As part of this lesson, you learn how to create new packages, add and configure data source and destination connections, and work with new control flow and data flow components.
17
+
In this lesson, you create a simple extract, transform, and load (ETL) package. The package extracts data from a single flat file source, transforms the data using two lookup transformations, and writes the transformed data to a copy of the `FactCurrencyRate` fact table in the [!INCLUDE [sssampledbdwobject-md](../includes/sssampledbdwobject-md.md)] sample database. As part of this lesson, you create new packages, add and configure data source and destination connections, and work with new control flow and data flow components.
18
18
19
-
Before creating a package, you need to understand the formatting used in both the source data and the destination. Then, you are ready to define the transformations necessary to map the source data to the destination.
19
+
Before creating a package, you need to understand the formatting used in both the source data and the destination. Then, you're ready to define the transformations necessary to map the source data to the destination.
20
20
21
21
## Prerequisites
22
22
23
23
This tutorial relies on Microsoft SQL Server Data Tools, a set of example packages, and a sample database.
24
24
25
-
- To install the SQL Server Data Tools, see [Download SQL Server Data Tools](../ssdt/download-sql-server-data-tools-ssdt.md).
-To download all of the lesson packages for this tutorial:
28
+
To install the SQL Server Data Tools, see [Install SQL Server Data Tools (SSDT) for Visual Studio](../ssdt/download-sql-server-data-tools-ssdt.md).
28
29
29
-
1. Navigate to [Integration Services tutorial files](https://www.microsoft.com/download/details.aspx?id=56827).
30
+
To download all of the lesson packages for this tutorial:
30
31
31
-
1. Select the **DOWNLOAD** button.
32
-
33
-
1. Select the **Creating a Simple ETL Package.zip** file, then select **Next**.
34
-
35
-
1. After the file downloads, unzip its contents to a local directory.
36
-
37
-
- To install and deploy the [!INCLUDE [sssampledbdwobject-md](../includes/sssampledbdwobject-md.md)] sample database, see [Install and configure AdventureWorks sample database - SQL](../samples/adventureworks-install-configure.md).
32
+
1. Navigate to [Integration Services tutorial files](https://www.microsoft.com/download/details.aspx?id=56827).
33
+
1. Select the **Download** button.
34
+
1. Select the `Creating a Simple ETL Package.zip` file, then select **Next**.
35
+
1. After the file downloads, unzip its contents to a local directory.
38
36
39
37
## Look at the source data
40
38
41
-
For this tutorial, the source data is a set of historical currency data in a flat file named **SampleCurrencyData.txt**. The source data has the following four columns: the average rate of the currency, a currency key, a date key, and the end-of-day rate.
39
+
For this tutorial, the source data is a set of historical currency data in a flat file named `SampleCurrencyData.txt`. The source data has the following four columns: the average rate of the currency, a currency key, a date key, and the end-of-day rate.
42
40
43
-
Here is an example of the source data in the SampleCurrencyData.txt file:
41
+
Here's an example of the source data in the `SampleCurrencyData.txt` file:
44
42
45
-
```sql
43
+
```output
46
44
1.00070049USD9/3/05 0:001.001201442
47
45
1.00020004USD9/4/05 0:001
48
46
1.00020004USD9/5/05 0:001.001201442
@@ -55,52 +53,47 @@ Here is an example of the source data in the SampleCurrencyData.txt file:
55
53
1.00020004USD9/12/05 0:000.99970009
56
54
```
57
55
58
-
When working with flat file source data, it's important to understand how the Flat File connection manager interprets the flat file data. If the flat file source is Unicode, the Flat File connection manager defines all columns as [DT_WSTR] with a default column width of 50. If the flat file source is ANSI-encoded, the columns are defined as [DT_STR] with a default column width of 50. You probably have to change these defaults to make the string column types more applicable for your data. You need to look at the data type of the destination, and then choose that type within the Flat File connection manager.
56
+
When working with flat file source data, it's important to understand how the Flat File connection manager interprets the flat file data. If the flat file source is Unicode, the Flat File connection manager defines all columns as `[DT_WSTR]` with a default column width of `50`. If the flat file source is ANSI-encoded, the columns are defined as `[DT_STR]` with a default column width of `50`. You probably have to change these defaults to make the string column types more applicable for your data. You need to look at the data type of the destination, and then choose that type within the Flat File connection manager.
59
57
60
58
## Look at the destination data
61
59
62
-
The destination for the source data is a copy of the **FactCurrencyRate** fact table in [!INCLUDE [sssampledbdwobject-md](../includes/sssampledbdwobject-md.md)]. The **FactCurrencyRate** fact table has four columns, and has relationships to two dimension tables, as shown in the following table.
60
+
The destination for the source data is a copy of the `FactCurrencyRate` fact table in [!INCLUDE [sssampledbdwobject-md](../includes/sssampledbdwobject-md.md)]. The `FactCurrencyRate` fact table has four columns, and has relationships to two dimension tables, as shown in the following table.
63
61
64
-
| Column Name| Data Type| Lookup Table| Lookup Column|
62
+
| Column name| Data type| Lookup table| Lookup column|
Our analysis of the source and destination data formats indicates that lookups are necessary for the **CurrencyKey** and **DateKey** values. The transformations that perform these lookups get those values by using the alternate keys from the **DimCurrency** and **DimDate** dimension tables.
75
+
Our analysis of the source and destination data formats indicates that lookups are necessary for the `CurrencyKey` and `DateKey` values. The transformations that perform these lookups get those values by using the alternate keys from the `DimCurrency` and `DimDate` dimension tables.
74
76
75
-
|flat file Column| Table Name| Column Name| Data Type|
77
+
|Flat file column| Table name| Column name| Data type|
-[Step 1: Create a new Integration Services project](../integration-services/lesson-1-1-creating-a-new-integration-services-project.md)
87
-
88
-
-[Step 2: Add and configure a Flat File connection manager](../integration-services/lesson-1-2-adding-and-configuring-a-flat-file-connection-manager.md)
89
-
90
-
-[Step 3: Add and configure an OLE DB connection manager](../integration-services/lesson-1-3-adding-and-configuring-an-ole-db-connection-manager.md)
91
-
92
-
-[Step 4: Add a Data Flow task to the package](../integration-services/lesson-1-4-adding-a-data-flow-task-to-the-package.md)
93
-
94
-
-[Step 5: Add and configure the flat file source](../integration-services/lesson-1-5-adding-and-configuring-the-flat-file-source.md)
95
-
96
-
-[Step 6: Add and configure the lookup transformations](../integration-services/lesson-1-6-adding-and-configuring-the-lookup-transformations.md)
97
-
98
-
-[Step 7: Add and configure the OLE DB destination](../integration-services/lesson-1-7-adding-and-configuring-the-ole-db-destination.md)
99
-
100
-
-[Step 8: Annotate and format the Lesson 1 package](../integration-services/lesson-1-8-making-the-lesson-1-package-easier-to-understand.md)
101
-
102
-
-[Step 9: Test the Lesson 1 package](../integration-services/lesson-1-9-testing-the-lesson-1-tutorial-package.md)
86
+
-[Lesson 1-1: Create a new Integration Services project](lesson-1-1-creating-a-new-integration-services-project.md)
87
+
-[Lesson 1-2: Add and configure a Flat File connection manager](lesson-1-2-adding-and-configuring-a-flat-file-connection-manager.md)
88
+
-[Lesson 1-3: Add and configure an OLE DB connection manager](lesson-1-3-adding-and-configuring-an-ole-db-connection-manager.md)
89
+
-[Lesson 1-4: Add a Data Flow task to the package](lesson-1-4-adding-a-data-flow-task-to-the-package.md)
90
+
-[Lesson 1-5: Add and configure the Flat File source](lesson-1-5-adding-and-configuring-the-flat-file-source.md)
91
+
-[Lesson 1-6: Add and configure the Lookup transformations](lesson-1-6-adding-and-configuring-the-lookup-transformations.md)
92
+
-[Lesson 1-7: Add and configure the OLE DB destination](lesson-1-7-adding-and-configuring-the-ole-db-destination.md)
93
+
-[Lesson 1-8: Annotate and format the Lesson 1 package](lesson-1-8-making-the-lesson-1-package-easier-to-understand.md)
94
+
-[Lesson 1-9: Test the Lesson 1 package](lesson-1-9-testing-the-lesson-1-tutorial-package.md)
103
95
104
-
## Start the lesson
96
+
## Next step
105
97
106
-
[Step 1: Create a new integration services project](../integration-services/lesson-1-1-creating-a-new-integration-services-project.md)
98
+
> [!div class="nextstepaction"]
99
+
> [Step 1: Create a new integration services project](../integration-services/lesson-1-1-creating-a-new-integration-services-project.md)
0 commit comments