Excel 원본Excel Source

Excel 원본은 MicrosoftMicrosoft Excel 통합 문서의 워크시트 또는 범위에서 데이터를 추출합니다.The Excel source extracts data from worksheets or ranges in MicrosoftMicrosoft Excel workbooks.

Excel 원본은 데이터 추출을 위한 4가지 데이터 액세스 모델을 제공합니다.The Excel source provides four different data access modes for extracting data:

  • 테이블 또는 뷰A table or view.

  • 변수에 지정된 테이블 또는 뷰A table or view specified in a variable.

  • SQL 문의 결과The results of an SQL statement. 쿼리는 매개 변수가 있는 쿼리일 수 있습니다.The query can be a parameterized query.

  • 변수에 저장된 SQL 문의 결과The results of an SQL statement stored in a variable.

중요

Excel에서 워크시트나 범위는 테이블 또는 뷰에 해당합니다.In Excel, a worksheet or range is the equivalent of a table or view. Excel 원본 및 대상 편집기의 사용 가능한 테이블 목록은 기존 워크시트(Sheet1$와 같이 워크시트 이름에 $ 기호가 붙음)와 명명된 범위(MyRange와 같이 $ 기호가 없음)를 표시합니다.The list of available tables in the Excel Source and Destination editors displays existing worksheets (identified by the $ sign appended to the worksheet name, such as Sheet1$) and named ranges (identified by the absence of the $ sign, such as MyRange). 자세한 내용은 "사용 시 고려 사항" 섹션을 참조하십시오.For more information, see the Usage Considerations section.

Excel 원본은 Excel 연결 관리자를 사용하여 데이터 원본에 연결하며 연결 관리자가 사용할 통합 문서 파일을 지정합니다.The Excel source uses an Excel connection manager to connect to a data source, and the connection manager specifies the workbook file to use. 자세한 내용은 Excel Connection Manager를 참조하세요.For more information, see Excel Connection Manager.

Excel 원본에는 하나의 일반 출력 및 하나의 오류 출력이 있습니다.The Excel source has one regular output and one error output.

사용 시 고려 사항Usage Considerations

Excel 연결 관리자는 Jet 4.0용 MicrosoftMicrosoft OLE DB Provider와 공급자에서 지원하는 Excel ISAM(Indexed Sequential Access Method) 드라이버를 사용하여 Excel 데이터 원본에 연결하고 데이터를 읽고 씁니다.The Excel Connection Manager uses the MicrosoftMicrosoft OLE DB Provider for Jet 4.0 and its supporting Excel ISAM (Indexed Sequential Access Method) driver to connect and read and write data to Excel data sources.

이 공급자와 드라이버의 동작에 대해 다루는 MicrosoftMicrosoft 기술 자료 문서가 많이 있습니다. 이러한 문서가 Integration ServicesIntegration Services 또는 이전 기능인 데이터 변환 서비스와 반드시 관련된 것은 아니지만 예기치 않은 결과를 발생시킬 수 있는 특정 동작에 대해 살펴보는 것이 좋습니다.Many existing MicrosoftMicrosoft Knowledge Base articles document the behavior of this provider and driver, and although these articles are not specific to Integration ServicesIntegration Services or its predecessor Data Transformation Services, you may want to know about certain behaviors that can lead to unexpected results. Excel 드라이버의 사용 방법과 동작에 대한 일반 정보는 Visual Basic 또는 VBA에서 Excel 데이터에 ADO를 사용하는 방법을 참조하십시오.For general information on the use and behavior of the Excel driver, see HOWTO: Use ADO with Excel Data from Visual Basic or VBA.

Excel 드라이버를 사용하는 Jet 공급자의 다음 동작은 Excel 데이터 원본에서 데이터를 읽을 때 예기치 않은 결과를 발생시킬 수 있습니다.The following behaviors of the Jet provider with the Excel driver can lead to unexpected results when reading data from an Excel data source.

  • 데이터 원본.Data sources. Excel 통합 문서의 데이터 원본은 $ 기호가 붙은 워크시트(예: Sheet1$) 또는 명명된 범위(예: MyRange)일 수 있습니다.The source of data in an Excel workbook can be a worksheet, to which the $ sign must be appended (for example, Sheet1$), or a named range (for example, MyRange). SQL 문에서 $ 기호로 인한 구문 오류가 없도록 워크시트의 이름을 구분해야 합니다(예: [Sheet1$]).In a SQL statement, the name of a worksheet must be delimited (for example, [Sheet1$]) to avoid a syntax error caused by the $ sign. 쿼리 작성기는 자동으로 이러한 구분 기호를 추가합니다.The Query Builder automatically adds these delimiters. 워크시트 또는 범위를 지정하면 드라이버는 워크시트 또는 범위의 가장 왼쪽에서 비어 있지 않은 첫 번째 셀부터 인접한 블록의 셀을 읽습니다.When you specify a worksheet or range, the driver reads the contiguous block of cells starting with the first non-empty cell in the upper-left corner of the worksheet or range. 따라서 원본 데이터나 제목 또는 머리글 행과 데이터 행 사이에 빈 행이 있을 수 없습니다.Therefore you cannot have empty rows in the source data, or an empty row between title or header rows and the data rows.

  • 누락된 값.Missing values. Excel 드라이버는 지정한 원본에서 특정 개수의 행(기본값: 8행)을 읽어 각 열의 데이터 형식을 추측합니다.The Excel driver reads a certain number of rows (by default, 8 rows) in the specified source to guess at the data type of each column. 열에 혼합된 데이터 형식, 특히 숫자 데이터와 텍스트 데이터가 혼합되어 있으면 드라이버는 주로 사용된 데이터 형식을 지정하고 다른 형식의 데이터가 포함된 셀에 Null 값을 반환합니다.When a column appears to contain mixed data types, especially numeric data mixed with text data, the driver decides in favor of the majority data type, and returns null values for cells that contain data of the other type. 사용된 횟수가 같은 경우에는 숫자 유형이 적용됩니다. Excel 워크시트에서 대부분의 셀 서식 옵션은 이러한 데이터 형식 결정에 영향을 주지 않습니다.(In a tie, the numeric type wins.) Most cell formatting options in the Excel worksheet do not seem to affect this data type determination. 가져오기 모드를 지정하여 Excel 드라이버의 이러한 동작을 수정할 수 있습니다.You can modify this behavior of the Excel driver by specifying Import Mode. 가져오기 모드를 지정하려면 속성 창에서 Excel 연결 관리자의 연결 문자열에 있는 확장 속성 값에 IMEX=1 을 추가합니다.To specify Import Mode, add IMEX=1 to the value of Extended Properties in the connection string of the Excel connection manager in the Properties window. 자세한 내용은 PRB: DAO OpenRecordset를 사용할 때 Excel 값이 NULL로 반환된다를 참조하십시오.For more information, see PRB: Excel Values Returned as NULL Using DAO OpenRecordset.

  • 잘린 텍스트.Truncated text. Excel 열에 텍스트 데이터가 포함되어 있음이 확인되면 드라이버는 샘플링하는 값 중 가장 긴 값을 기준으로 데이터 형식(문자열 또는 메모)을 선택합니다.When the driver determines that an Excel column contains text data, the driver selects the data type (string or memo) based on the longest value that it samples. 샘플링하는 행에서 255자보다 긴 값이 검색되지 않으면 이 드라이버는 해당 열을 메모 열이 아닌 255자 문자열 열로 처리합니다.If the driver does not discover any values longer than 255 characters in the rows that it samples, it treats the column as a 255-character string column instead of a memo column. 따라서 255자보다 긴 값은 잘릴 수 있습니다.Therefore, values longer than 255 characters may be truncated. 메모 열에서 데이터를 가져올 때 데이터가 잘리지 않도록 하려면 샘플링된 행 중 하나 이상의 행에 있는 메모 열에 255자보다 긴 값을 포함시키거나 드라이버가 샘플링하는 행 수를 늘려 이러한 행을 포함하도록 합니다.To import data from a memo column without truncation, you must make sure that the memo column in at least one of the sampled rows contains a value longer than 255 characters, or you must increase the number of rows sampled by the driver to include such a row. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel 레지스트리 키 아래 TypeGuessRows 값을 늘려 샘플링된 행 수를 늘릴 수 있습니다.You can increase the number of rows sampled by increasing the value of TypeGuessRows under the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Excel registry key. 자세한 내용은 PRB: Transfer of Data from Jet 4.0 OLEDB Source Fails w/ Error(PRB: Jet 4.0 OLEDB 원본에서 데이터를 전송하면 버퍼 오버플로 오류가 발생하면서 실패)를 참조하세요.For more information, see PRB: Transfer of Data from Jet 4.0 OLEDB Source Fails w/ Error.

  • 데이터 형식.Data types. Excel 드라이버는 제한된 데이터 형식 집합만 인식합니다.The Excel driver recognizes only a limited set of data types. 예를 들어 모든 숫자 열은 double(DT_R8)로 해석되고 모든 문자열 열(메모 열 제외)은 255자 유니코드 문자열(DT_WSTR)로 해석됩니다.For example, all numeric columns are interpreted as doubles (DT_R8), and all string columns (other than memo columns) are interpreted as 255-character Unicode strings (DT_WSTR). Integration ServicesIntegration Services 에서는 Excel 데이터 형식을 다음과 같이 매핑합니다. maps the Excel data types as follows:

    • 숫자 - 배정밀도 부동 소수점 수(DT_R8)Numeric – double-precision float (DT_R8)

    • 통화 - currency(DT_CY)Currency – currency (DT_CY)

    • 부울 - Boolean(DT_BOOL)Boolean – Boolean (DT_BOOL)

    • 날짜/시간 - datetime (DT_DATE)Date/time – datetime (DT_DATE)

    • 문자열 - 길이가 255인 유니코드 문자열(DT_WSTR)String – Unicode string, length 255 (DT_WSTR)

    • 메모 - 유니코드 텍스트 스트림(DT_NTEXT)Memo – Unicode text stream (DT_NTEXT)

  • 데이터 형식 및 길이 변환.Data type and length conversions. Integration ServicesIntegration Services 에서는 데이터 형식을 암시적으로 변환하지 않습니다. does not implicitly convert data types. 따라서 파생 열 변환이나 데이터 변환을 사용하여 Excel 데이터를 비 Excel 대상으로 로드하기 전에 명시적으로 변환하거나 비 Excel 데이터를 Excel 대상으로 로드하기 전에 변환해야 할 수 있습니다.As a result, you may need to use Derived Column or Data Conversion transformations to convert Excel data explicitly before loading it into a non-Excel destination, or to convert non-Excel data before loading it into an Excel destination. 이 경우 필요한 변환을 구성해 주는 가져오기 및 내보내기 마법사를 사용하여 초기 패키지를 만들면 유용할 수 있습니다.In this case, it may be useful to create the initial package by using the Import and Export Wizard, which configures the necessary conversions for you. 필요할 수 있는 일부 변환 예는 다음과 같습니다.Some examples of the conversions that may be required include the following:

    • 유니코드 Excel 문자열 열과 특정 코드 페이지가 있는 비유니코드 문자열 열 간 변환Conversion between Unicode Excel string columns and non-Unicode string columns with specific codepages

    • 255자 Excel 문자열 열과 길이가 다른 문자열 열 간 변환Conversion between 255-character Excel string columns and string columns of different lengths

    • 배정밀도 Excel 숫자 열과 다른 유형의 숫자 열 간 변환Conversion between double-precision Excel numeric columns and numeric columns of other types

Excel 원본 구성Excel Source Configuration

SSISSSIS 디자이너를 사용하거나 프로그래밍 방식으로 속성을 설정할 수 있습니다.You can set properties through SSISSSIS Designer or programmatically.

고급 편집기 대화 상자에는 프로그래밍 방식으로 설정할 수 있는 모든 속성이 표시됩니다.The Advanced Editor dialog box reflects all the properties that can be set programmatically. 고급 편집기 대화 상자를 사용하거나 프로그래밍 방식으로 설정할 수 있는 속성에 대한 자세한 내용을 보려면 다음 항목 중 하나를 클릭하세요.For more information about the properties that you can set in the Advanced Editor dialog box or programmatically, click one of the following topics:

Excel 원본 편집기(연결 관리자 페이지)Excel Source Editor (Connection Manager Page)

Excel 원본 편집기 대화 상자의 연결 관리자 노드를 사용하여 원본으로 사용할 Microsoft ExcelMicrosoft Excel 통합 문서를 선택할 수 있습니다.Use the Connection Manager node of the Excel Source Editor dialog box to select the Microsoft ExcelMicrosoft Excel workbook for the source to use. Excel 원본에서는 워크시트 또는 기존 통합 문서의 명명된 범위에서 데이터를 읽습니다.The Excel source reads data from a worksheet or named range in an existing workbook.

참고

Excel 원본의 CommandTimeout 속성은 Excel 원본 편집기에서 사용할 수 없지만 고급 편집기를 사용하여 설정할 수 있습니다.The CommandTimeout property of the Excel source is not available in the Excel Source Editor, but can be set by using the Advanced Editor. 이 속성에 대한 자세한 내용은 Excel Custom Properties의 Excel 원본 섹션을 참조하십시오.For more information on this property, see the Excel Source section of Excel Custom Properties.

정적 옵션Static Options

OLE DB 연결 관리자OLE DB connection manager
목록에서 기존 Excel 연결 관리자를 선택하거나 새로 만들기를 클릭하여 새 연결을 만듭니다.Select an existing Excel connection manager from the list, or create a new connection by clicking New.

새로 만들기New
Excel 연결 관리자 대화 상자를 사용하여 새 연결 관리자를 만듭니다.Create a new connection manager by using the Excel Connection Manager dialog box.

데이터 액세스 모드Data access mode
원본에서 데이터를 선택하는 방법을 지정합니다.Specify the method for selecting data from the source.

ValueValue DescriptionDescription
테이블 또는 뷰Table or view Excel 파일의 워크시트나 명명된 범위에서 데이터를 가져옵니다.Retrieve data from a worksheet or named range in the Excel file.
테이블 이름 또는 뷰 이름 변수Table name or view name variable 변수에 워크시트 또는 범위 이름을 지정합니다.Specify the worksheet or range name in a variable.

관련 정보: 패키지에서 변수 사용Related information: Use Variables in Packages
SQL 명령SQL command SQL 쿼리를 사용하여 Excel 파일에서 데이터를 가져옵니다.Retrieve data from the Excel file by using a SQL query.
변수를 사용한 SQL 명령SQL command from variable 변수에 SQL 쿼리 텍스트를 지정합니다.Specify the SQL query text in a variable.

미리 보기Preview
데이터 보기 대화 상자를 사용하여 결과를 미리 봅니다.Preview results by using the Data View dialog box. 미리 보기에는 최대 200개의 행이 표시될 수 있습니다.Preview can display up to 200 rows.

데이터 액세스 모드 동적 옵션Data Access Mode Dynamic Options

데이터 액세스 모드 = 테이블 또는 뷰Data access mode = Table or view

Excel 시트의 이름Name of the Excel sheet
Excel 통합 문서에서 사용할 수 있는 워크시트 또는 명명된 범위 목록에서 이름을 선택합니다.Select the name of the worksheet or named range from a list of those available in the Excel workbook.

데이터 액세스 모드 = 테이블 이름 또는 뷰 이름 변수Data access mode = Table name or view name variable

변수 이름Variable name
워크시트 또는 명명된 범위 이름이 포함된 변수를 선택합니다.Select the variable that contains the name of the worksheet or named range.

데이터 액세스 모드 = SQL 명령Data access mode = SQL command

SQL 명령 텍스트SQL command text
SQL 쿼리 텍스트를 입력하고 쿼리 작성을 클릭하여 쿼리를 작성하거나 찾아보기를 클릭하여 쿼리 텍스트가 포함된 파일을 찾습니다.Enter the text of a SQL query, build the query by clicking Build Query, or browse to the file that contains the query text by clicking Browse.

매개 변수Parameters
쿼리 텍스트에 ?를If you have entered a parameterized query by using ? 매개 변수 자리 표시자로 사용하여 매개 변수가 있는 쿼리를 입력한 경우 쿼리 매개 변수 설정 대화 상자를 사용하여 쿼리 입력 매개 변수를 패키지 변수에 매핑합니다.as a parameter placeholder in the query text, use the Set Query Parameters dialog box to map query input parameters to package variables.

Build queryBuild query
쿼리 작성기 대화 상자를 사용하여 시각적으로 SQL 쿼리를 생성할 수 있습니다.Use the Query Builder dialog box to construct the SQL query visually.

찾아보기Browse
열기 대화 상자를 사용하여 SQL 쿼리 텍스트가 포함된 파일을 찾을 수 있습니다.Use the Open dialog box to locate the file that contains the text of the SQL query.

쿼리 구문 분석Parse query
쿼리 텍스트의 구문을 확인합니다.Verify the syntax of the query text.

데이터 액세스 모드 = 변수를 사용한 SQL 명령Data access mode = SQL command from variable

변수 이름Variable name
SQL 쿼리 텍스트가 포함된 변수를 선택합니다.Select the variable that contains the text of the SQL query.

Excel 원본 편집기(열 페이지)Excel Source Editor (Columns Page)

Excel 원본 편집기 대화 상자의 페이지를 사용하여 출력 열을 각 외부(원본) 열에 매핑할 수 있습니다.Use the Columns page of the Excel Source Editor dialog box to map an output column to each external (source) column.

옵션Options

사용 가능한 외부 열Available External Columns
데이터 원본에서 사용 가능한 외부 열의 목록을 표시합니다.View the list of available external columns in the data source. 이 테이블을 사용하여 열을 추가하거나 삭제할 수 없습니다.You cannot use this table to add or delete columns.

외부 열External Column
태스크에서 읽는 순서대로 외부(원본) 열을 표시합니다.View external (source) columns in the order in which the task will read them. 이 순서는 먼저 위에 설명된 테이블에서 선택된 열을 지운 다음 목록에서 다른 순서로 외부 열을 선택하여 변경할 수 있습니다.You can change this order by first clearing the selected columns in the table discussed above, and then selecting external columns from the list in a different order.

출력 열Output Column
각 출력 열에 고유한 이름을 지정합니다.Provide a unique name for each output column. 기본값은 선택한 외부(원본) 열의 이름이지만 설명이 포함된 고유 이름을 임의로 선택할 수 있습니다.The default is the name of the selected external (source) column; however, you can choose any unique, descriptive name. 제공한 이름은 SSISSSIS 디자이너에 표시됩니다.The name provided will be displayed within SSISSSIS Designer.

Excel 원본 편집기(오류 출력 페이지)Excel Source Editor (Error Output Page)

Excel 원본 편집기 대화 상자의 오류 출력 페이지를 사용하여 오류 처리 옵션을 선택하고 오류 출력 열에 속성을 설정할 수 있습니다.Use the Error Output page of the Excel Source Editor dialog box to select error handling options and to set properties on error output columns.

옵션Options

입력 또는 출력Input or Output
데이터 원본의 이름을 표시합니다.View the name of the data source.

Column
Excel 원본 편집기 대화 상자의 연결 관리자페이지에서 선택한 외부(원본) 열을 표시합니다.View the external (source) columns that you selected on the Connection Manager page of the Excel Source Editordialog box.

오류Error
오류가 발생할 경우 수행할 동작을 지정합니다. 오류 무시, 행 리디렉션 또는 구성 요소 실패를 지정할 수 있습니다.Specify what should happen when an error occurs: ignore the failure, redirect the row, or fail the component.

관련 항목: 데이터 오류 처리Related Topics: Error Handling in Data

잘림Truncation
잘림이 발생할 경우 수행할 동작을 지정합니다. 오류 무시, 행 리디렉션 또는 구성 요소 실패를 지정할 수 있습니다.Specify what should happen when a truncation occurs: ignore the failure, redirect the row, or fail the component.

DescriptionDescription
오류에 대한 설명을 표시합니다.View the description of the error.

이 값을 선택한 셀에 설정Set this value to selected cells
오류나 잘림 발생 시 선택한 모든 셀에 수행할 동작을 지정합니다. 오류 무시, 행 리디렉션 또는 구성 요소 실패를 지정할 수 있습니다.Specify what should happen to all the selected cells when an error or truncation occurs: ignore the failure, redirect the row, or fail the component.

적용Apply
선택한 셀에 오류 처리 옵션을 적용합니다.Apply the error handling option to the selected cells.