Definições de layout

Um layout é uma coleta ordenada de definições de zona (campo). É necessário especificar um layout para o formato de comprimento fixo. Cada definição de zona é composta por cláusulas mutuamente exclusivas (não sobrepostas).

Essas cláusulas devem estar na ordem a seguir, embora algumas sejam opcionais e possam estar vazias:
Tipo de uso
Indica se uma zona é uma zona normal (dados) ou uma zona de preenchimento. Para zonas de dados, esse valor for omitido. É possível especificar zonas de preenchimento apenas em bytes. Existem outros tipos de uso, mas não são usados para dados com formato de comprimento fixo.
Nome
O nome da zona. Nomes de zonas duplicados não são permitidos. Essa definição não é usada atualmente, mas costuma ser fornecida para identificar o campo.
Tipo
Define o tipo de zona. Se você não especificar, o padrão de tipo é o tipo correspondente de uma coluna de tabela. As zonas de preenchimento não têm tipo padrão. Os valores válidos são os seguintes:
  • CARACT
  • CARACVAR
  • NCHAR
  • NVARCHAR
  • INT1
  • INT2
  • INT4
  • INT8
  • INT
  • UINT1
  • UINT2
  • UINT4
  • UINT8
  • UINT
  • FLUTUANTE
  • DUPLO
  • NUMÉRICO
  • BOOL
  • DATA
  • Horário
  • REGISTRO DE DATA E HORA
  • TIMETZ
Estilo
Define a representação da zona. Essa cláusula é opcional. A representação padrão é baseada no tipo de zona e na opção Format . Todos os outros estilos são válidos somente para os tipos de zonas não textuais correspondentes. Os valores válidos são os seguintes:
Interno
Válido somente para zonas textuais (char, varchar, nchar e nvarchar).
DECIMAIS
Válido para os tipos número inteiro e zona numérica.
DECIMALDELIM
Válido para os tipos de zona numérico, valor flutuante, duplo e estilo de tempo (time, timetz e timestamp).
FLUTUANTE
Válido para os tipos de zona de valor flutuante ou duplo.
SCIENTIFIC
Válido para os tipos de zona de valor flutuante ou duplo.
YMD ' <'date-delim'>
Válido para zonas de datas, incluindo outros estilos de data que recebem suporte para as opções da tabela externa DateStyle e DateDelim.
12Hour <'delimitação de tempo'>
Válido para fusos horários, incluindo outros estilos de horário que recebem suporte para as opções da tabela externa TimeStyle e TimeDelim.
24Hour <'delimitação de tempo'>
Válido para fusos horários, incluindo outros estilos de horário que recebem suporte para as opções da tabela externa TimeStyle e TimeDelim.
YMD ' <'date-delim'> ' 24Hour ' <'time-delim'>
Válido para as zonas timestamp e timetz, incluindo outras combinações de estilos de data e hora que recebem suporte para as opções da tabela externa DateStyle, DateDelim, TimeStyle e TimeDelim.
TRUE_FALSE, Y_N, 1_0
Válido para zonas booleanas, incluindo outros estilos booleanos que recebem suporte para a opção da tabela externa BoolStyle . O estilo deve estar em conformidade com o formato.
Duração
Número de bytes.
Nullif
Definição do atributo de nulidade da zona. Para arquivos de formato fixo, essa cláusula especifica um padrão de dados conhecido no campo que, quando presente, significa que o campo é nulo. O comprimento é igual ou menor do que a largura da coluna e o comprimento máximo é 39 bytes.
Os nulos são detalhados nos exemplos a seguir:
Tabela 1. Exemplo de layout
Tipo de uso Nome Tipo Estilo Duração Nullif
N/D f1 int4 DECIMAIS Bytes 10 Nullif @ = 0
N/D f2 data AMD Bytes 10 Nullif &= '2000-10-10'
N/D f3 char(20) Interno Chars 10 Nullif && ''
Preenchimento f4 char(10) N/D Bytes 10 N/D