プログラマーな日々

I'm a Cloud Architect and Developer, and a trainee of the network engineer training course. I have certified by AWS and Cisco (SAA/SOA/DVA/CCNA). I especially have highly motivated to reduce toils.

クリティカルなデータを安全に更新する方法

既に運用されているシステムのデータの手修正は絶対にミスが許されない作業です。今回はそんな状況でも安全にデータを変更する方法を紹介します。

クエリ

変更のクエリと変更確認のクエリを書きます。そして最後にロールバックします。

BEGIN TRAN

SELECT Age AS CurrentAge FROM Customer WHERE Name = 'Nakamura'

UPDATE
    Customer
SET
    Age = 21
WHERE
    Name = 'Nakamura'

SELECT Age AS UpdatedAge FROM Customer WHERE Name = 'Nakamura'

ROLLBACK

試行

変更後の結果を目視し、問題ないことを確認します。

変更

最後のROLLBACKをCOMMITに変えて、再度クエリを実行します。
これで安全にデータを変更することができます。