ID Artikel: 118552 - Kajian Terakhir: 14 September 2011 - Revisi: 2.0 Deskripsi menangani kebuntuan kondisi di SQL Server
RINGKASANKebuntuan adalah suatu kondisi di mana proses 2 (atau lebih) mencoba untuk mengakses
sumber daya yang lain memegang kunci pada. Karena setiap proses memiliki permintaan
untuk sumber daya lain, proses tidak dapat diselesaikan. Ketika jalan buntu
terdeteksi, SQL Server gulung kembali transaksi yang memiliki sedikit
pengolahan waktu dan kembali pesan galat 1205 ke aplikasi. Pesan kesalahan
1205 berakhir saat ini kiriman dan gulung kembali transaksi saat ini. INFORMASI LEBIH LANJUTDalam beberapa kasus, kondisi kebuntuan akan menyebabkan DB-perpustakaan (DB-Lib)
perintah (seperti dbsqlexec, dbsqlok, atau dbresults) untuk kembali gagal. Itu
selalu tanggung jawab program untuk memeriksa kode kembali dari
setiap perintah DB Lib. Jika gagal kembali oleh salah satu perintah DB Lib ini,
program harus membatalkan bets dan tidak mencoba untuk melanjutkan. Dalam beberapa
kasus, dimungkinkan untuk melanjutkan eksekusi perintah berikutnya dalam
batch. Namun, karena situasi buntu terjadi dan perintah yang
menyebabkan itu adalah perintah kembali digulung, kemudian dalam batch akan mungkin gagal
dengan kesalahan yang lebih serius, seperti objek tidak ditemukan. Dalam kasus lainnya, kebuntuan kondisi tidak akan menyebabkan perintah DB Lib untuk kembali gagal. Untuk menangani kondisi ini, program harus memeriksa pesan 1205 dalam pesan handler dan menggunakan fungsi dbsetuserdata berkomunikasi ini untuk aplikasi Anda (contoh dapat ditemukan di Bab 4 "Fungsi DB-perpustakaan" dalam SQL Server "Programmer's referensi untuk C" di bawah dbsetuserdata). Program harus kemudian memeriksa kebuntuan indikator setelah setiap panggilan DB-perpustakaan dan harus membatalkan bets jika kebuntuan terdeteksi. Sementara itu mungkin tampak tidak perlu untuk membatalkan batch setelah menerima 1205 kebuntuan pesan, hal ini diperlukan karena server tidak selalu membatalkan batch dalam situasi buntu. Jika bets tidak dibatalkan, apapun mencoba untuk mengirimkan batch baru dapat mengakibatkan kesalahan DB-perpustakaan 10038 "Hasil tertunda." Anda dapat menemukan deskripsi dari deadlocking dan contoh bagaimana mendeteksi kebuntuan kondisi di "Lampiran E memaksimalkan konsistensi dan Concurrency" dalam SQL Server untuk Windows NT "Programmer's referensi untuk C". Berlaku bagi:
Penerjemahan MesinPENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah. Klik disini untuk melihat versi Inggris dari artikel ini:118552
(http://support.microsoft.com/kb/118552/en-us/
)
| Sumber Lain Situs Pendukung Lain
KomunitasCari Bantuan SekarangTerjemahan Artikel
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email


Kembali ke atas
