Il modo migliore per produrre le esportazioni automatizzati in forma delimitato da tabulazioni da Teradata?

StackOverflow https://stackoverflow.com/questions/2472157

  •  20-09-2019
  •  | 
  •  

Domanda

Mi piacerebbe essere in grado di produrre un file eseguendo un comando o in batch che esporta fondamentalmente una tabella o vista (SELECT * FROM TBL), sotto forma di testo (conversioni predefinite in testo per date, numeri, ecc vanno bene) , tabulazioni, con NULL essere trasformato al campo vuoto (cioè un colum NULL avrebbe alcun spazio tra i caratteri di tabulazione, con terminazione di linea appropriato (CRLF o Windows), preferibilmente anche con intestazioni di colonna.

Questa è la stessa di esportazione che posso ottenere in SQL Assistant 12.0, ma scegliendo l'opzione di esportazione, utilizzando la scheda delimitatore, impostando il mio valore NULL a '' compreso intestazioni delle colonne.

Sono stato in grado di trovare la giusta combinazione di opzioni - la più vicina che ho ottenuto è con la costruzione di una singola colonna con CAST e '09'XC, ma le righe hanno ancora un leader indicatore di lunghezza di 2 byte nella maggior parte delle impostazioni I ho provato. Io preferirei non dover costruire stringhe di grandi dimensioni per le varie tabelle differenti.

È stato utile?

Soluzione

Per eliminare il 2-byte nell'output FastExport:

.EXPORT OUTFILE &dwoutfile MODE RECORD FORMAT TEXT;

e la tua Seleziona deve generare un campo di esportazione lunghezza fissa per esempio CHAR (n) . Così si gonfia la dimensione del file e finire con un file di lunghezza fissa di esportazione delimitato ma.

L'altra opzione è che se ci si trova in un ambiente UNIX / Linux è possibile inviare processo il file e eliminerà la parte due byte o scrive un ASXMOD in C di farlo come i record vengono trasmessi al file.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top