Jalankan Debugger Transact-SQL

Berlaku untuk:SQL Server

Anda dapat memulai debugger Transact-SQL setelah membuka jendela Editor Kueri Mesin Database. Kemudian, Anda dapat menjalankan kode Transact-SQL dalam mode debug hingga Anda menghentikan debugger. Anda dapat mengatur opsi untuk menyesuaikan cara debugger berjalan.

Fitur ini berfungsi dengan SSMS versi 17.9.1 dan yang lebih lama.

Memulai dan Menghentikan Debugger

Persyaratan untuk memulai debugger Transact-SQL adalah sebagai berikut:

  • Jika Mesin Database Anda Editor Kueri tersambung ke instans Mesin Database di komputer lain, Anda harus mengonfigurasi debugger untuk penelusuran kesalahan jarak jauh. Untuk informasi selengkapnya, lihat Mengonfigurasi aturan firewall sebelum menjalankan debugger Transact-SQL.

  • SQL Server Management Studio harus berjalan di bawah akun Windows yang merupakan anggota roll server tetap sysadmin.

  • Jendela Editor Kueri Mesin Database harus disambungkan dengan menggunakan login Autentikasi Windows atau Autentikasi SQL Server yang merupakan anggota peran server tetap sysadmin.

  • Jendela Editor Kueri Mesin Database harus terhubung ke instans Mesin Database dari Paket Layanan SQL Server 2005 (9.x) 2 (SP2) atau yang lebih baru. Anda tidak dapat menjalankan debugger saat jendela Editor Kueri tersambung ke instans yang berada dalam mode pengguna tunggal.

Kami menyarankan agar kode Transact-SQL di-debug di server pengujian, bukan server produksi, karena alasan berikut:

  • Penelusuran kesalahan adalah operasi yang sangat istimewa. Oleh karena itu, hanya anggota peran server tetap sysadmin yang diizinkan untuk men-debug di SQL Server.

  • Sesi penelusuran kesalahan sering berjalan untuk jangka waktu yang lama saat Anda menyelidiki operasi beberapa pernyataan Transact-SQL. Kunci, seperti kunci pembaruan, yang diperoleh oleh sesi mungkin ditahan untuk jangka waktu yang lama, hingga sesi berakhir atau transaksi dilakukan atau digulung balik.

Memulai debugger Transact-SQL menempatkan jendela Editor Kueri ke mode debug. Saat jendela Editor Kueri memasuki mode debug, debugger berhenti sejenak di baris pertama kode. Anda kemudian dapat menelusuri kode, menjeda eksekusi pada pernyataan Transact-SQL tertentu, dan menggunakan jendela debugger untuk melihat status eksekusi saat ini. Anda dapat memulai debugger dengan mengklik tombol Debug pada toolbar Kueri atau dengan mengklik Mulai Penelusuran Kesalahan pada menu Debug .

Jendela Editor Kueri tetap dalam mode debug hingga pernyataan terakhir di jendela Editor Kueri selesai atau Anda menghentikan mode debug. Anda dapat menghentikan mode debug dan eksekusi pernyataan dengan menggunakan salah satu metode berikut:

  • Pada menu Debug, klik Hentikan Penelusuran Kesalahan.

  • Pada toolbar Debug , klik tombol Hentikan Penelusuran Kesalahan .

  • Pada menu Kueri , klik Batalkan Eksekusi Kueri.

  • Pada toolbar Kueri , klik tombol Batalkan Eksekusi Kueri .

Anda juga dapat menghentikan mode debug dan memungkinkan pernyataan Transact-SQL yang tersisa selesai dijalankan dengan mengklik Lepaskan Semua pada menu Debug .

Mengontrol Debugger

Anda dapat mengontrol cara debugger Transact-SQL beroperasi dengan menggunakan perintah menu, toolbar, dan pintasan berikut:

  • Menu Debug dan toolbar Debug . Menu Debug dan toolbar Debug tidak aktif hingga fokus ditempatkan di jendela Editor Kueri terbuka. Mereka tetap aktif sampai proyek saat ini ditutup.

  • Pintasan keyboard debugger.

  • Menu pintasan Editor Kueri. Menu pintasan ditampilkan saat Anda mengklik kanan garis di jendela Editor Kueri. Saat jendela Editor Kueri dalam mode debug, menu pintasan menampilkan perintah debugger yang berlaku untuk baris atau string yang dipilih.

  • Menu item dan perintah konteks di jendela yang dibuka oleh debugger, seperti jendela Watch atau Breakpoints .

Tabel berikut ini memperlihatkan perintah menu debugger, tombol toolbar, dan pintasan keyboard.

Perintah menu debug Perintah pintasan editor Tombol toolbar Pintasan papan ketik Tindakan
Windows/Breakpoints Tidak tersedia Titik Henti CTRL+ALT+B Tampilkan jendela Titik Henti tempat Anda dapat melihat dan mengelola titik henti.
Windows/Watch/Watch1 Tidak tersedia Breakpoints/Watch/Watch1 CTRL+ALT+W, 1 Tampilkan jendela Watch1 .
Windows/Watch/Watch2 Tidak tersedia Breakpoints/Watch/Watch2 CTRL+ALT+W, 2 Tampilkan jendela Watch2 .
Windows/Watch/Watch3 Tidak tersedia Breakpoints/Watch/Watch3 CTRL+ALT+W, 3 Tampilkan jendela Watch3 .
Windows/Watch/Watch4 Tidak tersedia Breakpoints/Watch/Watch4 CTRL+ALT+W, 4 Tampilkan jendela Watch4 .
Windows/Lokal Tidak tersedia Titik Henti/Lokal CTRL+ALT+V, L Tampilkan jendela Lokal .
Tumpukan Windows/Panggilan Tidak tersedia Titik Henti/Tumpukan Panggilan CTRL+ALT+C Tampilkan jendela Tumpukan Panggilan.
Windows/Utas Tidak tersedia Titik Henti/Utas CTRL+ALT+H Tampilkan jendela Utas .
Lanjutkan Tidak tersedia Lanjutkan ALT+F5 Jalankan ke titik henti berikutnya. Lanjutkan tidak aktif sampai Anda berfokus pada jendela Editor Kueri yang berada dalam mode debug.
Mulai Penelusuran Kesalahan Tidak tersedia Mulai Penelusuran Kesalahan ALT+F5 Masukkan jendela Editor Kueri ke mode debug dan jalankan ke titik henti pertama. Jika Anda berfokus pada jendela Editor Kueri yang berada dalam mode debug, Mulai Penelusuran Kesalahan digantikan oleh Lanjutkan.
Hentian Semua Tidak tersedia Hentian Semua CTRL+ALT+BREAK Fitur ini tidak digunakan oleh debugger Transact-SQL.
Hentikan Penelusuran Kesalahan Tidak tersedia Hentikan Penelusuran Kesalahan SHIFT+F5 Keluarkan jendela Editor Kueri dari mode debug dan kembalikan ke mode reguler.
Copot Semua Tidak tersedia Tidak tersedia Tidak tersedia Menghentikan mode debug, tetapi menjalankan pernyataan yang tersisa di jendela Editor Kueri.
Step Into Tidak tersedia Step Into F11 Jalankan pernyataan berikutnya, dan buka juga jendela Editor Kueri baru dalam mode debug jika pernyataan berikutnya menjalankan prosedur, pemicu, atau fungsi tersimpan.
Step Over Tidak tersedia Step Over F10 Sama seperti Step Into, kecuali bahwa tidak ada fungsi, prosedur tersimpan, atau pemicu yang di-debug.
Keluar Tidak tersedia Keluar SHIFT+F11 Jalankan kode yang tersisa dalam pemicu, fungsi, atau prosedur tersimpan tanpa menjeda titik henti apa pun. Mode debug reguler dilanjutkan saat kontrol dikembalikan ke kode yang memanggil modul.
Tidak tersedia Jalankan Ke Kursor Tidak tersedia CTRL+F10 Jalankan semua kode dari lokasi pemberhentian terakhir ke lokasi kursor saat ini tanpa berhenti di titik henti apa pun.
QuickWatch QuickWatch Tidak tersedia CTRL+ALT+Q Tampilkan jendela QuickWatch .
Ganti Titik Henti Titik Henti/Sisipkan Titik Henti Tidak tersedia F9 Posisikan titik henti pada pernyataan Transact-SQL saat ini atau yang dipilih.
Tidak tersedia Titik Henti/Hapus Titik Henti Tidak tersedia Tidak tersedia Hapus titik henti dari baris yang dipilih.
Tidak tersedia Titik Henti/Nonaktifkan Titik Henti Tidak tersedia Tidak tersedia Nonaktifkan titik henti pada baris yang dipilih. Titik henti tetap berada di baris kode, tetapi tidak akan menghentikan eksekusi sampai dapat diaktifkan kembali.
Tidak tersedia Titik Henti/Aktifkan Titik Henti Tidak tersedia Tidak tersedia Aktifkan titik henti pada baris yang dipilih.
Hapus Semua Titik Henti Tidak tersedia Tidak tersedia CTRL+SHIFT+F9 Hapus semua titik henti.
Nonaktifkan Semua Titik Henti Tidak tersedia Tidak tersedia Tidak tersedia Nonaktifkan semua titik henti.
Tidak tersedia Tambahkan Watch Tidak tersedia Tidak tersedia Tambahkan ekspresi yang dipilih ke jendela Watch .

Lihat Juga