Sebagai seseorang yang secara teratur berurusan dengan memperbarui basis data produksi untuk pelanggan untuk peningkatan perangkat lunak kami, saya memberitahu Anda bahwa cara terbaik untuk meminimalkan kesalahan adalah dengan membuat pembaruan sesederhana mungkin.
Jika Anda dapat melakukan perubahan untuk semua catatan daripada catatan tertentu, itu lebih disukai.
Dengan kata lain, jika Anda diberi daftar id dari catatan yang perlu diubah keadaannya, Anda harus bertanya pada diri sendiri mengapa pembaruan dilakukan dalam konteks program. Mungkin dari 10 catatan yang perlu Anda perbarui, tabel hanya memiliki 10 elemen. Karena itu Anda harus bertanya pada diri sendiri apakah secara konseptual semua yang Anda lakukan adalah memperbarui status semua catatan.
Jika Anda dapat menyisipkan, itu lebih disukai.
Tindakan menambahkan catatan mandiri. Maksud saya hanya ada satu efek samping dari menambahkan catatan, dan itu adalah keberadaan catatan yang tidak ada sebelumnya. Karena itu, kecuali Anda menambahkan catatan yang seharusnya tidak ada di sana, seharusnya tidak ada masalah.
Jika Anda dapat menghindari penghapusan, itu lebih disukai.
Jika Anda melakukan penghapusan, Anda menghapus data yang seharusnya tidak dapat dipulihkan tanpa cadangan. Jika memungkinkan, cobalah untuk mengatur data sedemikian rupa sehingga Anda dapat menonaktifkan catatan dengan mengubah kondisinya daripada menghapus catatan secara fisik. Kelebihan data dapat diletakkan di partisi atau dapat dihapus seluruhnya di lain waktu setelah Anda yakin tidak ada masalah.
Memiliki kebijakan pembaruan yang konsisten.
Jika Anda perlu memperbarui catatan, salah satu dari beberapa hal dapat terjadi:
- Catatan Anda tidak ada.
- Catatan Anda ada tetapi sudah diubah.
- Catatan Anda ada dan membutuhkan perubahan.
Anda perlu memiliki kebijakan untuk menentukan arah tindakan jika sesuatu tidak berjalan sesuai rencana. Demi kesederhanaan, Anda harus konsisten di seluruh papan dan menerapkan kebijakan ini dalam situasi apa pun dari jenis ini, tidak hanya untuk tabel tertentu. Ini membuatnya lebih mudah untuk dapat memulihkan data nanti. Secara umum, kebijakan saya adalah menulis skrip sedemikian rupa agar dapat menjalankannya kembali nanti. Jika skrip gagal, senang mengetahui bahwa Anda dapat melakukan penyesuaian dan eksekusi ulang yang tepat, namun Anda bebas memilih kebijakan sendiri yang paling sesuai untuk Anda.
Cadangan
Ini tidak berarti memaafkan Anda untuk melakukan pencadangan sebelum melakukan pembaruan apa pun di lingkungan produksi! Meskipun dengan cadangan, saya menganggapnya gagal menggunakan cadangan. Kehilangan data tidak dapat menjadi kemungkinan bahkan dalam skenario terburuk .
Kesimpulan
Anda tidak selalu bisa melakukannya sesuai keinginan Anda. Skema tabel kemungkinan tidak akan ditentukan oleh Anda, dan karena itu artinya jenis pembaruan yang dapat Anda lakukan akan rumit dan berisiko. Meskipun jika Anda memiliki hak suara dalam masalah ini, ada baiknya Anda mengingat poin-poin ini saat mereka melakukan pembaruan secara langsung dan tanpa risiko yang signifikan.
Semoga berhasil!