Bagikan melalui


Transact-SQL Informasi Debugger

Setiap kali debugger menjeda eksekusi pada pernyataan Transact-SQL tertentu, Anda dapat menggunakan berbagai jendela debugger untuk melihat status eksekusi saat ini.

Debugger Windows

Dalam mode debugger, debugger membuka dua jendela di bagian bawah jendela SQL Server Management Studio utama. Debugger menampilkan semua informasinya di dua jendela ini. Setiap jendela debugger memiliki tab yang dapat Anda pilih untuk mengontrol kumpulan informasi mana yang ditampilkan di jendela. Jendela debugger kiri berisi tab Lokal, Watch1, Watch2, Watch3, dan Watch4 . Jendela debugger kanan berisi tab Call Stack, Threads, Breakpoints, Command Window, dan Output .

Nota

Deskripsi sebelumnya berlaku untuk lokasi default jendela debugger. Anda dapat menyeret tab untuk memindahkannya dari satu jendela ke jendela lain, atau Anda dapat melepas tab untuk membuat jendela baru yang dapat Anda letakkan di mana pun Anda inginkan.

Secara default, tidak semua tab atau jendela ini aktif. Anda dapat membuka jendela tertentu dengan menggunakan salah satu cara berikut:

  • Pada menu Debug , klik Windows, lalu pilih jendela yang Anda inginkan.

  • Pada toolbar Debug , klik Titik Henti, lalu pilih jendela yang Anda inginkan.

Ekspresi Transact-SQL

Ekspresi adalah klausa Transact-SQL yang menghasilkan nilai skalar tunggal, seperti variabel atau parameter. Jendela debugger kiri dapat menampilkan nilai data yang saat ini ditetapkan ke ekspresi di hingga lima tab atau jendela: Lokal, Watch1, Watch2, Watch3, dan Watch4.

Jendela Lokal menampilkan informasi tentang variabel lokal dalam cakupan debugger Transact-SQL saat ini. Kumpulan ekspresi yang tercantum di jendela Lokal berubah saat debugger berjalan melalui berbagai bagian kode.

Ekspresi di QuickWatch dan empat jendela Watch tidak terbatas pada hanya mencantumkan pengidentifikasi variabel. Anda dapat menentukan ekspresi Transact-SQL yang mengevaluasi ke satu nilai, seperti menambahkan angka ke variabel, atau pernyataan SELECT yang mengevaluasi ke satu nilai. Contohnya meliputi:

  • Nama variabel, seperti @IntegerCounter.

  • Operasi aritmatika pada variabel, seperti @IntegerCounter + 1.

  • Operasi string pada dua variabel karakter, seperti @FirstName + @LastName.

  • Pernyataan SELECT yang mengembalikan satu nilai, seperti SELECT CharCol FROM MyTable WHERE PrimaryKey = 1.

Anda dapat menggunakan jendela QuickWatch untuk melihat nilai ekspresi Transact-SQL, lalu menyimpan ekspresi tersebut ke jendela Watch . Untuk memilih ekspresi di QuickWatch, pilih atau masukkan nama ekspresi dalam kotak Ekspresi .

Empat jendela Tonton menampilkan informasi tentang variabel dan ekspresi yang telah Anda pilih. Kumpulan ekspresi yang tercantum di jendela Watch tidak berubah hingga Anda menambahkan atau menghapus ekspresi dari daftar.

Untuk menambahkan ekspresi ke jendela Watch , Anda dapat memilih Tambahkan Watch di kotak dialog QuickWatch , atau memasukkan nama ekspresi di kolom Nama baris kosong di jendela Watch .

Anda dapat mengatur nilai data untuk variabel di jendela Lokal, Watch, atau QuickWatch dengan mengklik kanan baris lalu memilih Edit Nilai. Kolom Nilai di jendela Lokal , jendela Pengawasan , dan kotak dialog QuickWatch semua mendukung visualisasi data teks, XML, dan HTML. Visualizer diwakili oleh tip data kaca pembesar di ujung kanan kolom Nilai . Anda dapat menggunakan visualizer untuk melihat teks, XML, atau nilai data HTML dalam tampilan yang cocok dengan jenis data, misalnya, menampilkan file XML di jendela browser.

Dalam mode debug, saat Anda memindahkan penunjuk mouse di atas pengidentifikasi, pop-up Info Cepat ditampilkan dengan nama ekspresi dan nilainya saat ini. Untuk informasi selengkapnya, lihat Info Cepat (IntelliSense).

Titik Pemutus

Anda dapat menggunakan jendela Titik Henti untuk melihat dan mengelola titik henti yang saat ini diatur. Untuk informasi selengkapnya, lihat Menelusuri Kode Transact-SQL.

Tumpukan Panggilan

Jendela Call Stack menampilkan lokasi eksekusi saat ini, dan informasi tentang bagaimana eksekusi diteruskan dari jendela editor asli melalui modul Transact-SQL (fungsi, prosedur tersimpan, atau pemicu) untuk mencapai lokasi eksekusi saat ini. Setiap baris di jendela Call Stack disebut bingkai tumpukan dan mewakili salah satu item berikut:

  • Lokasi eksekusi saat ini.

  • Panggilan dari satu modul ke modul lainnya.

  • Panggilan dari jendela editor ke modul Transact-SQL.

Urutan tumpukan adalah kebalikan dari tempat modul dipanggil. Lokasi eksekusi saat ini berada pada bagian atas tumpukan (stack) dan panggilan asli berada pada bagian bawah. Panah kuning di margin kiri kerangka tumpukan mengidentifikasi bingkai tempat pengeksekusian dihentikan oleh debugger.

Kolom Nama merekam informasi berikut:

  • Modul sumber yang berisi baris kode yang dipanggil ke tingkat berikutnya.

  • Baris kode yang memanggil modul berikutnya pada tumpukan.

  • Jika panggilan masuk ke prosedur atau fungsi tersimpan yang mengambil parameter, nama, jenis data, dan nilai semua parameter juga tercantum.

Ekspresi di dalam jendela Lokal, Watch, dan QuickWatch dievaluasi untuk frame stack saat ini. Secara bawaan, bingkai tumpukan yang sedang digunakan merupakan bingkai teratas dalam tumpukan, di mana eksekusi debugger dihentikan sementara. Saat Anda menentukan bingkai tumpukan lain sebagai bingkai saat ini, ekspresi di jendela Lokal, Watch, dan QuickWatch dievaluasi ulang untuk bingkai tumpukan baru. Anda dapat mengubah bingkai tumpukan saat ini dengan mengeklik dua kali bingkai atau mengklik bingkai dan memilih Beralih Ke Bingkai. Pada saat itu, ekspresi di jendela Locals, Watch, dan QuickWatch dievaluasi ulang untuk bingkai baru. Setiap kali bingkai tumpukan yang aktif tidak berada di puncak tumpukan, panah hijau di margin kiri menunjukkan bingkai tumpukan yang aktif.

Saat Anda mengklik kanan bingkai tumpukan dan memilih Buka Kode Sumber, kode untuk bingkai tersebut ditampilkan di jendela Editor Kueri. Namun, bingkai tersebut tidak dibuat sebagai bingkai saat ini, dan konten jendela Locals, Watch, dan QuickWatch tidak diubah.

Informasi Sistem dan Hasil Transact-SQL

Debugger mencantumkan status dan pesan peristiwanya di jendela Output . Ini termasuk informasi seperti ketika debugger terhubung dengan proses lain atau ketika benang debugger berakhir.

Saat dalam mode debug, tab Hasil dan Pesan masih aktif di Editor Kueri. Tab Hasil masih menampilkan set hasil dari pernyataan Transact-SQL yang dijalankan selama sesi debug. Tab Pesan terus menampilkan pesan sistem, seperti xx Baris Terpengaruh dan hasil statement PRINT dan RAISERROR.

Lihat Juga

Jendela Lokal
Jendela Pemantau
Kotak Dialog QuickWatch
Jendela Titik Henti
Jendela Tumpukan Panggilan
Jendela Utas
Jendela Output
Transact-SQL Debugger