csvからinsert文を組み立てるときによくつかうやつ

いつも、忘れる。何度もメモしてる気がする。
csvからinsert文を組み立てる

cat z.csv
2011-01-01 01:02:00,tarou,get1
2011-01-01 01:02:10,aa,get2
2011-01-01 01:02:10,jiro,put1
# 上記をinsert文へ
# シングルクォートは\047で入れることもできる(他のやり方もある)
cat z.csv | nawk -F, '{printf("insert into Ztable values(to_date(\047%s\047,\047yyyy-mm-dd hh24:mi:ss\047),\047%s\047,\047%s\047)",$1,$2,$3)}' > insert_ztable.sql

# 100行ごとにcommitを入れる
# printfを使って改行コードを入れるのがコツ、よくelseを書き忘れてcommitばっかりのsqlをつくってしまう。
cat insert_ztable.sql | awk '{if((NR % 100) == 0){printf("%s\ncommit;\n",$0)}else{print $0}}' > insert_ztable2.sql
# 末尾にcommitを入れる
# 入れ忘れて、よく最後の方だけデータがなくて件数が合わなくて困ったりする。
echo "commit;" >> insert_ztable2.sql