一个成批删除临时表地sh用于informix

#!/bin/csh

if ($#argv != 1   then

echo "Usage:csh deltmp.sh [dbname]";

exit(0);

else if ($#argv == 1  then

set dbname="$argv[1]";

endif

rm deltmp*.sql

echo "now load tmp table to deltmp.sql"

dbaccess $dbname <<EOF

unload to "deltmp.sql"

select tabname from systables where tabname like "tmp%" and created < extend(current,year to day)

EOF

echo "load finish"

echo "| --> ;"

sed 's/|/;/w deltmp1.sql' deltmp.sql

echo "tmp --> drop table tmp"

sed 's/tmp/drop table tmp/w deltmp2.sql' deltmp1.sql

echo "delete temp table"

dbaccess $dbname deltmp2.sql

echo "delele temp files"

rm deltmp*.sql

你可能感兴趣的:(sql,Informix)