Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O driver de Texto ODBC dá suporte a arquivos de texto delimitados e de largura fixa. Um arquivo de texto consiste em uma linha de cabeçalho opcional e zero ou mais linhas de texto.
Embora a linha de cabeçalho use o mesmo formato que as outras linhas no arquivo de texto, o driver de Texto ODBC interpreta as entradas de linha de cabeçalho como nomes de coluna, não dados.
Uma linha de texto delimitada contém um ou mais valores de dados separados por delimitadores: vírgulas, guias ou um delimitador personalizado. O mesmo delimitador deve ser usado em todo o arquivo. Valores de dados nulos são indicados por dois delimitadores em uma linha sem dados entre eles. Cadeias de caracteres em uma linha de texto delimitada podem ser colocadas entre aspas duplas (""). Nenhum espaço em branco pode ocorrer antes ou depois de valores delimitados.
A largura de cada entrada de dados em uma linha de texto de largura fixa é especificada em um esquema. Valores de dados nulos são indicados por espaços em branco.
As tabelas são limitadas a um máximo de 255 campos. Os nomes de campo são limitados a 64 caracteres e as larguras de campo são limitadas a 32.766 caracteres. Os registros são limitados a 65.000 bytes.
Um arquivo de texto só pode ser aberto para um único usuário. Não há suporte para vários usuários.
A gramática a seguir, escrita para programadores, define o formato de um arquivo de texto que pode ser lido pelo driver de texto ODBC:
| Formato | Representação |
|---|---|
| Não itálico | Caracteres que devem ser inseridos conforme mostrado |
| Itálico | Argumentos definidos em outro lugar na gramática |
| colchetes ([]) | Itens opcionais |
| chaves ({}) | Uma lista de opções mutuamente exclusivas |
| barras verticais (|) | Escolhas mutuamente exclusivas separadas |
| reticências (...) | Itens que podem ser repetidos uma ou mais vezes |
O formato de um arquivo de texto é:
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
Observação
A largura de cada coluna em um arquivo de texto de largura fixa é especificada no arquivo 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
Observação
O delimitador em um arquivo de texto delimitado personalizado é especificado no arquivo 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 ::=
Observação
Para arquivos delimitados, um NULL é representado por nenhum dado entre dois delimitadores.
fixed-width-null ::= <SPACE>...
Observação
Para arquivos de largura fixa, um NULL é representado por espaços.