Sunday, November 14, 2010

Insert data from text file (using grep) to Database

echo "Start grep data transaction "`date`;

ORACLE_HOME=/app/oracle/product/10.2.0/cl_1;
export ORACLE_HOME;
PATH=$PATH:$ORACLE_HOME/bin;
export PATH;

# please don't use "/" for /EOF this used because error at write the blog
DATE=`sqlplus -s user/password@DATABASE_SID << /EOF
set pages 1000
set heading off

SELECT TO_CHAR(SYSDATE-1/24, 'DD_MM_YYYY_HH24') sdate FROM DUAL;

quit;
EOF`

#DATE="10_11_2010_18"

# goto home directory

cd
echo $DATE > IG_DATE.txt;
DATE=`cat IG_DATE.txt`;
rm IG_DATE.txt;

vServer="10.10.10.10"

echo "Grep data on $DATE "`date`;
#echo "Grep data "`date`;

echo "grep Success "`date`;
VSuccess=`cat /logs/LOG_TRANSACTIONS_$DATE* | grep -ic "Success"`
echo "INSERT INTO TBL_TRANS_VOUCHER VALUES ('"$DATE"','"$vServer"','Success','"$VSuccess"',SYSDATE);" >> IG_INSERTED.sql

echo "Insert data to database "`date`;

ORACLE_HOME=/app/oracle/product/10.2.0/cl_1;
export ORACLE_HOME;
PATH=$PATH:$ORACLE_HOME/bin;
export PATH;

# please don't use "/" for /EOF this used because error at write the blog
get_date=`sqlplus -s user/password@DATABASE_SID << /EOF
set pages 1000
set heading off

@IG_INSERTED.sql;

quit;
EOF`


echo "Process finished "`date`;
rm IG_INSERTED.sql