[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [shell-script] Shell Script com Oracle
From: |
MrBiTs |
Subject: |
RE: [shell-script] Shell Script com Oracle |
Date: |
Wed, 27 Apr 2005 16:44:17 -0300 |
/*
A dúvida é de Shell Script mesmo.
Eu sei como utilizar o sqlldr e emitir um comando via sqlplus user/pwd@base
... Sugerido pelo Rogério em e-mail anterior...
Já vi que não tem acesso direto via shell, vou usar o C mesmo.
Mesmo assim obrigada pela atenção.
*/
Claro que tem ! Eu uso slqldr via shell script. Veja o trecho de codigo:
sqlldr userid=$DBUSR/$DBPWD@$DBNAME control=./Control/$imptable.ctl
log=./Control/Reports/Logs/$DATEDIR/$imptable.log skip=1 silent=ALL
E dentro do $imptable.ctl
LOAD DATA INFILE 'Reports/2005-04/26/rCam.db'
APPEND INTO TABLE rCam
FIELDS TERMINATED BY '^'
TRAILING NULLCOLS
(
ACCOUNT,CAMPAIGN,IMPRESSIONS,CLICKTHRUS,SESSIONS,USERS,PAGEVIEWS,VIEWTIME,"W
HEN" DATE "YYYY-MM-DD hh24:mi:ss" )
Entao, voce pode fazer algo como:
for imptable in $rpttables
do
file=Reports/$DATEDIR/$imptable.db
if [ "$imptable" = "rTarget" ]
then
echo "Skipping rTarget"
continue
fi
echo "`date +%T`: Deleting Daily Data from table $imptable"
echo "`date +%T`: Loading table $imptable"
sqlldr userid=$DBUSR/$DBPWD@$DBNAME control=./Control/$imptable.ctl
log=./Control/Reports/Logs/$DATEDIR/$imptable.log skip=1 silent=ALL
done
Como voce ve, é possivel acessar diretamente via shell, sim, e nao exige
grandes conhecimentos da linguagem em si.