do_sql.sh

Magnifico script al que le podemos pasar un sql y comprobará si ha ido bien o no. Ya que al salir de sqlPlus no sabemos si el SQL que le hemos pasado ha funcionado o ha arrojado algun mensaje de error.

Y como puedes ver el Script pertenece a Laurent DUCHET… al cesar lo que es del cesar.

#!/bin/ksh
# Laurent DUCHET 
#   procedure qui existe un programme SQL
#
# Parametre  :
#            1=Connect base
#            2=Sql et parametre


if [ $# -le 1 ]
then
echo "Arguments incorrects"
exit 5

fi


DOCONNECT=$1

shift

log_file=$DATA_LOG/p1scratch.`date '+%y%m%d%H%M%S'`.log

logtmp=/tmp/do_sql$$.lst

rm -f $logtmp

# affiche du nom du sql

z=$(echo $1 |cut -c1)

if [ "a$z" = "a@" ]
   then
   echo "Execution de $*"
fi

echo "log is $logtmp"
sqlplus -s $DOCONNECT > $logtmp 2>&1  << EOF
set serveroutput on size 1000000
set timing on
select to_char(sysdate,'dd/mm/yyyy HH24:MI') DTIME from dual;

$*

EOF
continue=$?

cat $logtmp

if [ $continue -ne 0 ]
then
exit 3
fi

continue=$(egrep -c -e "Invalid|ORA-|SP2-0310|core" $logtmp)

exit $continue
echo "fin do_sql.sh"
 
ora/dosql.txt · Última modificación: 2008/05/13 10:00 (editor externo)
 
Excepto donde se indique lo contrario, el contenido de esta wiki se autoriza bajo la siguiente licencia:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki