唉!今天一早PL/SQL Developer不能直连数据库了。都改到安全平台上!我要导数据怎么办呀!还好FTP还能上。我就写了个shell脚本,用来导数据。 这个脚本还有个问题就是不支持select * from table的查询,说是查询语句中不能有“ *”星号。 如果想把查询结果存
这个脚本还有个问题就是不支持select * from table的查询,说是查询语句中不能有“ *”星号。
如果想把查询结果存成excel格式,可以在SQL中把各字段用||','||连起来。如下:
select a||','||b||','||c||','||d from table
把select_return.txt下载到本机,改名成select_return.csv。用EXCEL打开另存为xls格式就可以了。
命令运行时记得要把SQL语句用“”引起来哟!像下面那样!
sql_spool.sh username/password@TNS "sql_string"
<无>###########脚本开始############# ##!/bin/sh . $HOME/ .profile echo "sqlspool username/password@TNS \"sql_string\"" echo "---------------------" if [ "$1" = "" ] ; then echo "---------------------" echo "Please input username/password@TNS" exit 1 fi RUNPATH=`pwd` CONNSTR=$1 SQLSTR=`echo "$2"` echo "---------------------" echo $CONNSTR echo "---------------------" echo $SQLSTR echo "---------------------" sqlplus -s $CONNSTR <<END set echo off set pagesize 0 set feedback off set heading off set linesize 120 set newpage none spool $RUNPATH/select_return.txt $2; spool off quit END ############脚本结束###########