Saya mencoba menambahkan kolom ke tabel dengan banyak data di SQL Server 2005, menggunakan SSMS.
Jadi saya telusuri tabel, pilih Modify, dan tambahkan kolom baru. Lalu, ketika saya menekan Simpan, saya mendapatkan peringatan berikut:
Menyimpan Definisi Perubahan ke tabel dengan data dalam jumlah besar bisa memakan waktu yang cukup lama. Saat perubahan disimpan, data tabel tidak akan dapat diakses
Saya setuju dengan itu, DB sedang offline dan saya memiliki semua waktu di dunia, jadi saya menekan Ya.
Namun, operasi kemudian mulai habis setelah sekitar 30 detik dengan pesan ini:
Tidak dapat mengubah tabel. Batas waktu kedaluwarsa. Periode waktu habis berlalu sebelum penyelesaian operasi atau server tidak merespons.
Lalu, ketika saya menekan OK:
Pengguna membatalkan dialog penyimpanan (Alat Basis Data Visual MS)
Saya tidak mengerti. Saya telah menetapkan batas waktu eksekusi ke 0 (tak terbatas) baik dalam dialog koneksi SSMS dan di bawah Tools -> Options -> Query Execution -> SQL Server. Apa gunanya mengatur batas waktu eksekusi jika hanya diabaikan?
Adakah yang tahu nilai batas waktu apa yang digunakan di sini, dan bagaimana saya dapat mengaturnya?
sumber
SSMS tidak boleh digunakan untuk modifikasi data umum. Buat diri Anda nyaman dengan T-SQL dan tambahkan kolom seperti yang disarankan di bawah ini.
ALTER TABLE TableName ADD NewColumn INT
SSMS sebenarnya membuat tabel baru dengan semua kolom, mengimpor data ke tabel baru dan menjatuhkan tabel lama. Bahkan jika Anda memiliki semua waktu di dunia, jika ada cara yang efisien dalam melakukan sesuatu, Anda harus menggunakan metode yang tepat. Untuk menghindari kekacauan ini, dalam SQL Server 2008 tidak akan mengizinkan metode GUI IIRC.
sumber