Re: Creating ASCII delimited files
From: Thomas Kyte <tkyte_at_us.oracle.com>
Date: Sun, 06 Sep 1998 14:00:29 GMT
Message-ID: <35f59548.3214161_at_192.86.155.100>
fi
exit
EOF
sqlplus -s $PW << EOF
set trimspool on
set linesize 5000
start /tmp/flat$$.sql
exit
EOF
rm /tmp/flat$$.sql
done
Date: Sun, 06 Sep 1998 14:00:29 GMT
Message-ID: <35f59548.3214161_at_192.86.155.100>
A copy of this was sent to "Joe Humphreys" <jhum_at_who.net> (if that email address didn't require changing) On Sat, 5 Sep 1998 09:57:56 -0700, you wrote:
>I'm using SQL*PLUS commands and spooling the data to create an ASCII file.
>The data comes into the file fixed format. How can I get it to come in
>delimited (commas or tabs)?
>
>
Here is a script that work in UNIX pretty well. You go:
$ flat scott/tiger emp
and it'll dump the emp table to stdout.....
#!/bin/sh
if [ "$1" = "" ]
then
cat << EOF usage: flat un/pw [tables|views] example: flat scott/tiger emp dept description: Select over standard out all rows of table or view with columns delimited by tabs. EOF exit
fi
PW=$1
shift
for X in $*
do
sqlplus -s $PW << EOF > /tmp/flat$$.sql
set wrap off set feedback off set pagesize 0 set verify off prompt select select lower(column_name)||'||'',''||' from user_tab_columns where table_name = upper('$X') and column_id != (select max(column_id) from user_tab_columns where table_name = upper('$X')) / select lower(column_name) from user_tab_columns where table_name = upper('$X') and column_id = (select max(column_id) from user_tab_columns where table_name = upper('$X')) / prompt from $X prompt / prompt exit
exit
EOF
sqlplus -s $PW << EOF
set wrap off set feedback off set pagesize 0 set verify off
set trimspool on
set linesize 5000
start /tmp/flat$$.sql
exit
EOF
rm /tmp/flat$$.sql
done
Thomas Kyte
tkyte_at_us.oracle.com
Oracle Government
Herndon VA
-- http://govt.us.oracle.com/ -- downloadable utilities ---------------------------------------------------------------------------- Opinions are mine and do not necessarily reflect those of Oracle Corporation Anti-Anti Spam Msg: if you want an answer emailed to you, you have to make it easy to get email to you. Any bounced email will be treated the same way i treat SPAM-- I delete it.Received on Sun Sep 06 1998 - 16:00:29 CEST