Schema.ini 파일(텍스트 파일 드라이버)
텍스트 드라이버를 사용하는 경우 텍스트 파일의 형식은 스키마 정보 파일을 사용하여 결정됩니다. 스키마 정보 파일은 항상 Schema.ini 이름이 지정되며 항상 텍스트 데이터 원본과 동일한 디렉터리에 유지됩니다. 스키마 정보 파일은 파일의 일반 형식, 열 이름 및 데이터 형식 정보 및 기타 여러 데이터 특성에 대한 정보를 IISAM에 제공합니다. 고정 길이 데이터에 액세스하려면 항상 Schema.ini 파일이 필요합니다. 텍스트 테이블에 DateTime, Currency 또는 10진수 데이터가 포함되어 있거나 테이블의 데이터 처리를 더 자세히 제어하려는 경우 Schema.ini 파일을 사용해야 합니다.
참고
Text ISAM은 Schema.ini 아닌 레지스트리에서 초기 값을 가져옵니다. 동일한 기본 파일 형식이 모든 새 텍스트 데이터 테이블에 적용됩니다. CREATE TABLE 문에서 만든 모든 파일은 테이블 목록에서 기본값이 선택된 텍스트 서식 정의 대화 상자 <에서 파일 서식 값을 선택하여 설정된 동일한 기본> 형식 값을 상속 합니다 . 레지스트리의 값이 Schema.ini 값과 다른 경우 레지스트리의 값은 Schema.ini 값으로 덮어씁니다.
Schema.ini 파일 이해
Schema.ini 파일은 텍스트 파일의 레코드에 대한 스키마 정보를 제공합니다. 각 Schema.ini 항목은 테이블의 5가지 특성 중 하나를 지정합니다.
텍스트 파일 이름
파일 형식
필드 이름, 너비 및 형식
문자 집합
특수 데이터 형식 변환
다음 섹션에서는 이러한 특징에 대해 설명합니다.
파일 이름 지정
Schema.ini 첫 번째 항목은 항상 대괄호로 묶인 텍스트 원본 파일의 이름입니다. 다음 예제에서는 파일 Sample.txt 항목을 보여 줍니다.
[Sample.txt]
파일 형식 지정
Schema.ini 서식 옵션은 텍스트 파일의 형식을 지정합니다. 텍스트 IISAM은 문자로 구분된 대부분의 파일에서 자동으로 형식을 읽을 수 있습니다. 큰따옴표(")를 제외한 모든 단일 문자를 파일의 구분 기호로 사용할 수 있습니다. Schema.ini 형식 설정은 파일별로 Windows 레지스트리의 설정을 재정의합니다. 다음 표에서는 서식 옵션에 유효한 값을 나열합니다.
서식 지정자 | 테이블 형식 | Schema.ini Format 문 |
---|---|---|
탭 구분 | 파일의 필드는 탭으로 구분됩니다. | Format=TabDelimited |
CSV 구분 | 파일의 필드는 쉼표(쉼표로 구분된 값)로 구분됩니다. | Format=CSVDelimited |
사용자 지정 구분 | 파일의 필드는 대화 상자에 입력하도록 선택한 문자로 구분됩니다. 공백을 포함하여 큰따옴표(")를 제외한 모든 항목이 허용됩니다. | Format=Delimited(custom character) 또는 구분 기호가 지정되지 않은 경우: Format=Delimited( ) |
고정 길이 | 파일의 필드는 고정 길이입니다. | Format=FixedLength |
필드 지정
문자로 구분된 텍스트 파일에서 필드 이름을 두 가지 방법으로 지정할 수 있습니다.
테이블의 첫 번째 행에 필드 이름을 포함하고 ColNameHeader 를 True로 설정합니다 .
각 열을 숫자로 지정하고 열 이름 및 데이터 형식을 지정합니다.
각 열을 숫자로 지정하고 고정 길이 파일의 열 이름, 데이터 형식 및 너비를 지정해야 합니다.
참고
Schema.ini ColNameHeader 설정은 파일별로 Windows 레지스트리의 FirstRowHasNames 설정을 재정의합니다.
필드의 데이터 형식도 확인할 수 있습니다. MaxScanRows 옵션을 사용하여 열 형식을 결정할 때 검사해야 하는 행 수를 나타냅니다. MaxScanRows를 0으로 설정하면 전체 파일이 검사됩니다. Schema.ini MaxScanRows 설정은 파일별로 Windows 레지스트리의 설정을 재정의합니다.
다음 항목은 Microsoft Jet가 테이블의 첫 번째 행에 있는 데이터를 사용하여 필드 이름을 확인해야 하며 전체 파일을 검사하여 사용되는 데이터 형식을 확인해야 했음을 나타냅니다.
ColNameHeader=True
MaxScanRows=0
다음 항목은 문자로 구분된 파일의 경우 선택 사항이며 고정 길이 파일에 필요한 열 번호(Coln) 옵션을 사용하여 테이블의 필드를 지정합니다. 이 예제에서는 10자 CustomerNumber 텍스트 필드와 30자 CustomerName 텍스트 필드의 두 필드에 대한 Schema.ini 항목을 보여 줌:
Col1=CustomerNumber Text Width 10
Col2=CustomerName Text Width 30
Coln의 구문은 다음과 같습니다.
n=ColumnName type [Width] [#]
설명
다음 표에서는 Coln 항목의 각 부분을 설명합니다.
매개 변수 | Description |
---|---|
ColumnName | 열의 텍스트 이름입니다. 열 이름에 포함된 공백이 포함된 경우 큰따옴표로 묶어야 합니다. |
type | 데이터 형식은 다음과 같습니다. Microsoft Jet 데이터 형식 bit Byte Short long 통화 Single Double DateTime 텍스트 메모 ODBC 데이터 형식 문자(텍스트와 동일) Float(Double과 동일) 정수(Short와 동일) LongChar(메모와 동일) 날짜 날짜 형식 |
Width | 리터럴 문자열 값 Width 입니다. 다음 숫자는 열의 너비를 지정한다는 것을 나타냅니다(문자로 구분된 파일의 경우 선택 사항, 고정 길이 파일에 필요). |
# | 열의 너비를 지정하는 정수 값입니다( Width 가 지정된 경우 필수). |
문자 집합 선택
ANSI 및 OEM의 두 문자 집합 중에서 선택할 수 있습니다. Schema.ini CharacterSet 설정은 파일별로 Windows 레지스트리의 설정을 재정의합니다. 다음 예제에서는 문자 집합을 ANSI로 설정하는 Schema.ini 항목을 보여 줍니다.
CharacterSet=ANSI
데이터 형식 형식 및 변환 지정
Schema.ini 파일에는 데이터를 변환하거나 표시하는 방법을 지정하는 데 사용할 수 있는 몇 가지 옵션이 포함되어 있습니다. 다음 표에서는 이러한 각 옵션을 나열합니다.
옵션 | Description |
---|---|
DateTimeFormat | 날짜 및 시간을 나타내는 형식 문자열로 설정할 수 있습니다. 가져오기/내보내기에서 모든 날짜/시간 필드가 동일한 형식으로 처리되는 경우 이 항목을 지정해야 합니다. 오전 및 오후를 제외한 모든 Microsoft Jet 형식이 지원됩니다. 형식 문자열이 없으면 Windows 제어판 짧은 날짜 그림 및 시간 옵션이 사용됩니다. |
DecimalSymbol | 정수를 숫자의 소수 부분과 구분하는 데 사용되는 단일 문자로 설정할 수 있습니다. |
NumberDigits | 숫자의 소수 부분에 있는 소수 자릿수를 나타냅니다. |
NumberLeadingZeros | 소수점 값이 1보다 작고 -1보다 큰 값에 선행 0이 포함되어야 하는지 여부를 지정합니다. 이 값은 False(선행 0 없음) 또는 True일 수 있습니다. |
CurrencySymbol | 텍스트 파일의 통화 값에 사용할 수 있는 통화 기호를 나타냅니다. 예를 들어 달러 기호($) 및 Dm이 있습니다. |
CurrencyPosFormat | 다음 값으로 설정할 수 있습니다. - 분리가 없는 통화 기호 접두사($1) - 분리가 없는 통화 기호 접미사(1$) - 문자 분리가 1개인 통화 기호 접두사($ 1) - 한 문자 분리가 있는 통화 기호 접미사(1 $) |
CurrencyDigits | 통화 금액의 소수 부분에 사용되는 숫자 수를 지정합니다. |
CurrencyNegFormat | 다음 값 중 하나일 수 있습니다. - ($1) - -$1 - $-1 - $1- - (1$) - -1$ - 1-$ - 1$- - -1 $ - -$ 1 - 1 $- - $ 1- - $ -1 - 1- $ - ($ 1) - (1 $) 이 예제에서는 달러 기호를 보여 주지만 실제 프로그램에서 적절한 CurrencySymbol 값으로 바꿔야 합니다. |
CurrencyThousandSymbol | 텍스트 파일의 통화 값을 수천 으로 구분하는 데 사용할 수 있는 단일 문자 기호를 나타냅니다. |
CurrencyDecimalSymbol | 통화 금액의 소수 부분과 전체를 구분하는 데 사용되는 단일 문자로 설정할 수 있습니다. |
참고
항목을 생략하면 Windows 제어판 기본값이 사용됩니다.