Saya mencoba menambahkan kolom nullable ke tabel yang sering digunakan di database Oracle 10 OLTP saat aplikasi sedang berjalan dan sibuk. Menambahkan kolom nullable hanyalah perubahan kamus data dan oleh karena itu kunci tabel apa pun hanya ditahan untuk jangka waktu singkat (yang dapat ditangani oleh sistem).
Masalahnya ALTER TABLE
saya sering gagal dengan ini:
ORA-00054: resource busy and acquire with NOWAIT specified
Pendekatan saya saat ini adalah melakukan perubahan dengan menjalankannya sampai tidak ada kunci di atas meja. Ini berarti saya tidak dapat menjalankan skrip seperti itu di SQL*Plus secara penuh, tetapi perlu menyalin dan menempelkan setiap pernyataan dan memastikannya berfungsi.
Apakah ada cara yang lebih baik?