텍스트 파일 형식(텍스트 파일 드라이버)
ODBC 텍스트 드라이버는 구분된 텍스트 파일과 고정 너비 텍스트 파일을 모두 지원합니다. 텍스트 파일은 선택적 머리글 선과 0개 이상의 텍스트 줄로 구성됩니다.
머리글 줄은 텍스트 파일의 다른 줄과 동일한 형식을 사용하지만 ODBC 텍스트 드라이버는 머리글 줄 항목을 데이터가 아닌 열 이름으로 해석합니다.
구분 기호로 구분된 하나 이상의 데이터 값(쉼표, 탭 또는 사용자 지정 구분 기호)이 구분 기호로 구분됩니다. 파일 전체에서 동일한 구분 기호를 사용해야 합니다. Null 데이터 값은 데이터 없이 행에 있는 두 개의 구분 기호로 표시됩니다. 구분된 텍스트 줄의 문자열은 큰따옴표("")로 묶을 수 있습니다. 구분된 값 앞이나 뒤에 공백이 발생할 수 없습니다.
고정 너비 텍스트 줄에 있는 각 데이터 항목의 너비는 스키마에 지정됩니다. Null 데이터 값은 공백으로 표시됩니다.
테이블은 최대 255개 필드로 제한됩니다. 필드 이름은 64자로 제한되며 필드 너비는 32,766자로 제한됩니다. 레코드는 65,000바이트로 제한됩니다.
텍스트 파일은 단일 사용자에 대해서만 열 수 있습니다. 여러 사용자가 지원되지 않습니다.
프로그래머용으로 작성된 다음 문법은 ODBC 텍스트 드라이버에서 읽을 수 있는 텍스트 파일의 형식을 정의합니다.
서식 | 표현 |
---|---|
기울임꼴이 아닌 | 표시된 대로 입력해야 하는 문자 |
기울임꼴 | 문법의 다른 위치에 정의된 인수 |
대괄호([]) | 선택적 항목입니다. |
중괄호({}) | 상호 배타적 선택 항목 목록 |
세로 막대(|) | 상호 배타적인 선택 항목 분리 |
줄임표(...) | 한 번 이상 반복할 수 있는 항목 |
텍스트 파일의 형식은 다음과 같습니다.
text-file ::=
[delimited-header-line] [delimited-text-line]... end-of-file |
[fixed-width-header-line] [fixed-width-text-line]... end-of-file
delimited-header-line ::= delimited-text-line
delimited-text-line ::=
blank-line |
delimited-data [delimiter delimited-data]... end-of-line
fixed-width-header-line ::= fixed-width-text-line
fixed-width-text-line ::=
blank-line |
fixed-width-data [fixed-width-data]... end-of-line
end-of-file ::= <EOF>
blank-line ::= end-of-line
delimited-data ::= delimited-string | number | date | delimited-null
fixed-width-data ::= fixed-width-string | number | date | fixed-width-null
참고
고정 너비 텍스트 파일의 각 열 너비는 Schema.ini 파일에 지정됩니다.
end-of-line ::= <CR> | <LF> | <CR><LF>
delimited-string ::= unquoted-string | quoted-stringunquoted-string ::= [character | digit] [character | digit | quote-character]...
quoted-string ::=
quote-character
[character | digit | delimiter | end-of-line | embedded-quoted-string]...
quote-characterembedded-quoted-string ::= quote-characterquote-character
[character | digit | delimiter | end-of-line]
quote-characterquote-characterfixed-width-string ::= [character | digit | delimiter | quote-character] ...
character ::= any character except:
delimiterdigitend-of-fileend-of-linequote-characterdigit ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
delimiter ::= , | <TAB> |
custom-delimitercustom-delimiter ::= any character except:
end-of-fileend-of-linequote-character
참고
사용자 지정으로 구분된 텍스트 파일의 구분 기호는 Schema.ini 파일에 지정됩니다.
quote-character ::= "
number ::= exact-number | approximate-number
exact-number ::= [+ | -] {unsigned-integer[.unsigned-integer] |
unsigned-integer. |
.unsigned-integer}
approximate-number ::= exact-number{e | E}[+ | -]unsigned-integer
unsigned-integer ::= {digit}...
date ::=
mm date-separator dd date-separator yy |
mmm date-separator dd date-separator yy |
dd date-separator mmm date-separator yy |
yyyy date-separator mm date-separator dd |
yyyy date-separator mmm date-separator dd
mm ::= digit [digit]
dd ::= digit [digit]
yy ::= digit digit
yyyy ::= digit digit digit digit
mmm ::= Jan | Feb | Mar | Apr | May | Jun | Jul | Aug | Sep | Oct | Nov | Dec
date-separator ::= - | / | .
delimited-null ::=
참고
구분된 파일의 경우 두 구분 기호 사이에 데이터가 없는 NULL이 표시됩니다.
fixed-width-null ::= <SPACE>...
참고
고정 너비 파일의 경우 NULL은 공백으로 표시됩니다.