レコードをコピーする。

絶賛保守フェーズなので、あるレコードをコピーして、
片方は削除フラグを立て、もう片方は補正して使いたい。


こんなとき、あなたならどうしますか?



PL/SQLであるレコードを変数に格納する。
そのレコード情報を使って、insert&updateする。



insert文で削除フラグ1のデータを投入する。
update文で削除フラグ0のデータを補正する。



other.......


最初、①を考えました。
PL/SQLはきっとjavaばりに制御文が書けて便利なのではないかと。


でも、助長なSQLになりそうだったのと、テストしにくいので却下。
結果、②にしました。
ある程度まとめてinsertできるような条件だったこともあります。
まずはinsertしてから、補正をそれぞれ考えて行く。
その対象は25本。まったくイヤになっちゃいますよね。


少しでも助長を避けるために、
補正対象となるキーは冒頭で定義して、使い回す事にしました。
10テーブルぐらい更新するんですが、キーは大体(←ここポイント)
同じなのでこの方が楽になるし見やすくなるしミスも減るはず!


ひゃっぽいヾ(*´∀`)ノ