- 论坛徽章:
- 0
|
有个需求,unix服务器上有几个文本文件存放数据,数据量大,
head -4 /TMP/test.txt
1234|asdasd|sadasda|asdasd
1234|asdasd|asdA|sadd
1234|asdasd|asdasd|sdasd
由于文件多,数据量大,不想借助其它工具,想用shell脚本直接insert进oracle数据库,
写了如下脚本:
#!/bin/sh
FILENAME=/TMP/test.txt
TABLE=test
awk -F"|" '{print $1," ",$2," ",$3," ",$4}' $FILENAME | while read col1 col2 col3 col4
do
sqlplus -s test/test@test <<! #>/dev/null 2>&1
insert into $TABLE values('$col1','$col2','$col3','$col4');
commit;
!
done
exit 0
但想了想这样根本行不通,
请教能不能在与oracle只建立一次连接之后,不断开,里面再嵌入shell命令操作文件,
等数据全部insert 完之后再断开连接呢?
请高手指点了。。 |
|