Definizioni di layout
Un layout è un insieme ordinato di definizioni di zone (campi). È necessario specificare un layout per il formato a lunghezza fissa. Ogni definizione di zona è composta da clausole mutuamente esclusive (non sovrapposte).
Queste clausole devono essere nell'ordine seguente, anche se alcune sono facoltative e possono essere vuote:
- Tipo di utilizzo
- Indica se una zona è una zona normale (dati) o una zona di riempimento. Per le zone dati, questo valore viene omesso. È possibile specificare le zone di riempimento solo in byte. Esistono altri tipi di utilizzo, ma non sono utilizzati per i dati a lunghezza fissa.
- Nome
- Il nome della zona. Non sono ammessi nomi di zone duplicati. Questa definizione non è attualmente utilizzata, ma viene tipicamente fornita per identificare il campo.
- Tipo
- Definisce il tipo di zona. Se non viene specificato, il tipo viene impostato come predefinito sul tipo corrispondente di una colonna della tabella. Le zone di riempimento non hanno un tipo predefinito. I valori validi sono:
- CAR
- CAR. VAR.
- NCHAR
- NVARCHAR
- INT1
- INT2
- INT4
- INT8
- INT
- UINT1
- UINT2
- UINT4
- UINT8
- UINT
- Mobile
- DOPPIO
- NUMERIC
- Bool
- DATA
- ORA
- Data/ora
- timeTZ
- Stile
- Definisce la rappresentazione della zona. Questa clausola è facoltativa. La rappresentazione predefinita si basa sul tipo di zona e sull'opzione " Format. Tutti gli altri stili sono validi solo per i corrispondenti tipi di zona non testuali. I valori validi sono:
- INTERNO
- Valido solo per le zone testuali (char, varchar, nchar e nvarchar).
- DECIMAL
- Valido per i tipi di zona interi e numerici.
- DECIMALDELIM
- Valido per i tipi di zona numerica, float, double e time-style (time, timetz e timestamp).
- Mobile
- Valido per i tipi di zona float o double.
- SCIENTIFIC
- Valido per i tipi di zona float o double.
- YMD '<'date-delim'>
- Valido per le zone di data, compresi altri stili di data supportati dalle opzioni della tabella esterna DateStyle e DateDelim.
- 12Hour <'time-delim'>
- Valido per i fusi orari, compresi altri stili di tempo supportati dalle opzioni della tabella esterna TimeStyle e TimeDelim.
- 24Hour <'time-delim'>
- Valido per i fusi orari, compresi altri stili di tempo supportati dalle opzioni della tabella esterna TimeStyle e TimeDelim.
- YMD " <'date-delim'> " 24Hour " <'time-delim'>
- Valido per le zone timestamp e timetz, comprese altre combinazioni di stili di data e ora supportate dalle opzioni della tabella esterna DateStyle, DateDelim, TimeStyle e TimeDelim.
- VERO_FALSO, Y_N, 1_0
- Valido per le zone booleane, compresi altri stili booleani supportati dall'opzione di tabella esterna BoolStyle. Lo stile deve essere conforme al formato.
- Lunghezza
- Numero di byte.
- nullif
- Definizione dell'attributo zone nulle. Per i file a formato fisso, questa clausola specifica un modello di dati noto all'interno del campo che, se presente, indica che il campo è nullo. La lunghezza è uguale o inferiore alla larghezza della colonna e la lunghezza massima è di 39 byte.I nulli sono descritti in dettaglio negli esempi seguenti:
Tabella 1. Esempio di layout Tipo di utilizzo Nome Tipo Stile Lunghezza nullif ND f1 int4 DECIMAL Byte 10 Nullif @ = 0 ND f2 data AMG Byte 10 Nullif &= '2000-10-10' ND f3 char(20) INTERNO Caratteri 10 Nullif && '' Riempimento f4 char(10) ND Byte 10 ND