ID Artikel: 817178 - Kajian Terakhir: 04 Oktober 2011 - Revisi: 2.0

Tips pemecahan masalah untuk T-SQL Debugger dalam Visual Studio.NET

Tips SistemThis article applies to a different operating system than the one you are using. Article content that may not be relevant to you is disabled.

Pada Halaman ini

Perbesar semua | Perkecil semua

RINGKASAN

Artikel ini berisi pedoman dan arahan untuk memecahkan masalah dasar yang berkaitan dengan T-SQL Debugger dalam Microsoft Visual Studio.NET. Namun, ini bukanlah sebuah daftar yang lengkap, dan beberapa masalah mungkin khusus untuk lingkungan Anda. Untuk informasi tambahan tentang T-SQL debugging, klik artikel berikut nomor ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
316549  (http://support.microsoft.com/kb/316549/ ) Bagaimana memperbaiki prosedur yang tersimpan dalam Visual Studio.NET
Untuk informasi lebih lanjut tentang mengaktifkan SQL debugging, Kunjungi situs Web Microsoft Developer Network (MSDN) berikut:
.aspx http://msdn2.Microsoft.com/en-us/library/s0fk6z6e (vs.71) (http://msdn2.microsoft.com/en-us/library/s0fk6z6e(vs.71).aspx)

INFORMASI LEBIH LANJUT

Pemecahan masalah T-SQL Debugger

Menggunakan metode berikut untuk membantu memecahkan T-SQL Debugger dalam Visual Studio.NET:
  • Pastikan bahwa layanan Remote prosedur Call (RPC) dimulai pada komputer server. Untuk melakukannya, ikuti langkah-langkah berikut:
    1. Di Panel kontrol, klik kanan Layanan, lalu klik Terbuka.
    2. Periksa untuk memastikan bahwa Jauh Prosedur panggilan (RPC) dan Prosedur jauh (RPC) panggilan Locator Layanan berjalan, dan kemudian menetapkan layanan ini untuk memulai secara otomatis.
  • Pastikan account pengguna T-SQL Debugger telah membaca dan melaksanakan hak akses untuk komponen debugger dalam SQL debug folder. The SQL Debugging folder ada di lokasi berikut:
    Program program Files\Microsoft bersama
    Jika account pengguna tidak memiliki ijin tersebut, Anda menerima pesan galat berikut:
    Tidak dapat memulai debug T-SQL sesi. Memastikan sqldbreg2.exe dan proxy/rintisan DLL sqldbg.dll terdaftar pada mesin ini.
  • Pastikan bahwa nama prosedur yang disimpan tidak berisi tanda kutip.

    Untuk informasi lebih lanjut tentang kesalahan yang terjadi ketika Anda memperbaiki prosedur dengan nama yang berisi tanda kutip, kunjungi situs Website MSDN berikut:
    .aspx http://msdn2.Microsoft.com/en-us/library/abk849z6 (vs.71) (http://msdn2.microsoft.com/en-us/library/abk849z6(vs.71).aspx)
  • Pastikan bahwa prosedur yang disimpan tidak berisi RAISERROR pernyataan yang menimbulkan kesalahan dengan keparahan 16 atau lebih tinggi. Untuk informasi tambahan, klik nomor artikel berikut ini untuk melihat artikel dalam Pengetahuan Microsoft Base:
    280099  (http://support.microsoft.com/kb/280099/ ) BUG: Transact-SQL Debugger tidak debug disimpan prosedur yang berisi pernyataan RAISERROR yang menimbulkan apapun kesalahan dengan keparahan 16 atau lebih tinggi
  • T-SQL Debugger galat periksa log peristiwa pada Peraga Peristiwa.

    Untuk informasi lebih lanjut, kunjungi Website MSDN berikut:
    .aspx http://msdn2.Microsoft.com/en-us/library/hcez68k4 (vs.71) (http://msdn2.microsoft.com/en-us/library/hcez68k4(vs.71).aspx)
  • T-SQL Debugger menggunakan didistribusikan COM (DCOM) untuk berkomunikasi antara komputer klien dan database server. Ini adalah ide yang baik untuk konfigurasi DCOM untuk memungkinkan pengguna jauh untuk melampirkan debugger proses pada database server. Masalah dapat terjadi jika pengaturan DCOM izin tidak benar.

    Untuk informasi lebih lanjut tentang pengaturan DCOM izin, kunjungi situs-situs Website MSDN berikut:
    .aspx http://msdn2.Microsoft.com/en-us/library/s0t6w6kc (vs.71) (http://msdn2.microsoft.com/en-us/library/s0t6w6kc(vs.71).aspx)
    .aspx http://msdn2.Microsoft.com/en-us/library/6ksc0a82 (vs.71) (http://msdn2.microsoft.com/en-us/library/6ksc0a82(vs.71).aspx)
    .aspx http://msdn2.Microsoft.com/en-us/library/aa291270 (VS.71) (http://msdn2.microsoft.com/en-us/library/aa291270(VS.71).aspx)
  • Jika Anda menginstal versi baru dari Microsoft SQL Server setelah Anda menginstal SQL jauh debugging, Anda harus menjalankan setup jauh komponen untuk Pastikan bahwa Anda memiliki komponen benar diinstal untuk remote debugging.

    Untuk informasi lebih lanjut tentang SQL jauh debugging, kunjungi situs-situs Website MSDN berikut:
    .aspx http://msdn2.Microsoft.com/en-us/library/bt727f1t (vs.71) (http://msdn2.microsoft.com/en-us/library/bt727f1t(vs.71).aspx)
    .aspx http://msdn2.Microsoft.com/en-us/library/ey7ec813 (vs.71) (http://msdn2.microsoft.com/en-us/library/ey7ec813(vs.71).aspx)
  • Periksa log peristiwa aplikasi dan ke log peristiwa sistem pada komputer yang menjalankan SQL Server. Untuk melakukannya, ikuti langkah-langkah berikut:
    1. Di Panel kontrol, klik dua kali Administratif Alat.
    2. Klik dua kali Peraga Peristiwa. Dalam Acara penampil jendela, Anda melihat log peristiwa aplikasi dan peristiwa sistem log.
  • Untuk T-SQL Debugger untuk bekerja dengan benar dalam Visual Studio .NET, nama komputer dan nama instalasi SQL Server harus cocok dengan. Jika Anda Ubah nama instalasi SQL Server, nama komputer tidak cocok SQL Nama instalasi server dan T-SQL Debugger gagal. Untuk tambahan informasi, klik nomor artikel di bawah ini untuk melihat artikel di Basis Pengetahuan Microsoft:
    817253  (http://support.microsoft.com/kb/817253/ ) PRB: Tidak dapat debug prosedur yang tersimpan dalam Visual Studio.NET setelah Anda mengubah nama SQL Server

    317241  (http://support.microsoft.com/kb/317241/ ) PRB: Mengubah nama komputer host untuk SQL Server menyebabkan debug disimpan prosedur untuk gagal
  • Lakukan verifikasi bahwa T-SQL Debugger sesi dimulai dari sesi klien Terminal server. T-SQL Debugger debugging pilihan tidak tersedia ketika klien terminal server yang terhubung ke terminal server yang telah diinstal Microsoft SQL Server 2000. Debugging prosedur yang disimpan dari ini komputer klien Terminal melalui sesi terminal server ini tidak tersedia.

    Pesan galat dalam log peristiwa aplikasi terminal server ini mirip dengan pesan galat berikut:
    Tidak dapat menghubungkan debugger pada SQLSERVER_MACHINENAME % (kesalahan = 0x80070057 parameter tidak benar. ). Memastikan bahwa klien sisi komponen seperti SQLLE.DLL yang diinstal dan terdaftar pada SQLSERVER_MACHINENAME %. Debugging penyandang cacat untuk sambungan 54.
    Untuk informasi tambahan, klik artikel berikut nomor ini untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
    280100  (http://support.microsoft.com/kb/280100/ ) BUG: Transact-SQL Debugger tidak tersedia melalui Terminal Server sesi
  • Verifikasi bahwa Anda memiliki dua disimpan prosedur yang sama Nama. Satu disimpan prosedur ini dimiliki oleh pemilik database (DBO) dan yang lain disimpan prosedur ini dimiliki oleh pengguna non-DBO. Jika Anda memiliki dua disimpan prosedur yang memiliki nama yang sama tetapi yang memiliki pemilik yang berbeda, baik pengguna dapat melangkah melalui prosedur yang disimpan dengan menggunakan T-SQL Debugger. Untuk informasi tambahan, klik nomor artikel di bawah ini untuk melihat artikel di Microsoft Basis Pengetahuan:
    296539  (http://support.microsoft.com/kb/296539/ ) BUG: T-SQL Debugger tidak memungkinkan melangkah melalui prosedur yang tersimpan dengan nama yang sama dimiliki oleh non-DBO pengguna
  • Pastikan bahwa Anda adalah pemilik prosedur yang tersimpan bahwa Anda sedang mencoba untuk men-debug. Di T-SQL Debugger, Anda tidak dapat debug disimpan prosedur yang Anda lakukan sendiri setelah Anda menginstal Microsoft SQL Server 2000 Paket Layanan 3 (SP3). Ketika Anda debug disimpan prosedur yang tidak dimiliki oleh Anda, Anda mungkin menerima pesan galat yang sama dengan berikut:
    Server: Msg 229, tingkat 14, 5 negara, prosedur sp_sdidebug, jalur 1 [Microsoft][ODBC SQL Server Driver][SQL Server]Izin MENGEKSEKUSI ditolak pada objek 'sp_sdidebug', database 'dbname', pemilik 'ownername'.
    Untuk tambahan informasi, klik nomor artikel di bawah ini untuk melihat artikel di Basis Pengetahuan Microsoft:
    328173  (http://support.microsoft.com/kb/328173/ ) PRB: Database pengguna tidak dapat debug disimpan prosedur pengguna lain memiliki
  • Pastikan bahwa Anda telah melaksanakan hak akses pada yang disimpan prosedur debugging. Ketika Anda tidak memiliki izin mengeksekusi pada yang disimpan prosedur debugging, Anda menerima pesan galat yang sama dengan berikut:
    Server: Msg 229, tingkat 14, menyatakan 5, prosedur sp_sdidebug, jalur 1 [Microsoft] [ODBC SQL Server Driver] [SQL Server] EXECUTE izin ditolak pada objek 'sp_sdidebug', database 'dbname', pemilik 'dbowner'.
    Untuk memberikan mengeksekusi hak akses pada prosedur yang disimpan debugging, menjalankan perintah berikut dalam Query Analyzer:
    GRANT EXECUTE
    ON sp_sdidebug 
    TO <myUserName>
    
  • Jika server Anda adalah Microsoft SQL Server 2000 SP3, Anda harus Jalankan berikut:
    EXECUTE  sp_sdidebug 'LEGACY_ON' 
    pada komputer yang menjalankan SQL Server setiap kali dimulai. Kamu bisa melakukannya secara manual dari Query Analyzer. Ini adalah sebuah saklar keamanan baru yang ditambahkan di SP3.
  • Untuk memastikan bahwa T-SQL Debugger bekerja dengan benar, tes T-SQL Debugger di komputer yang sama di mana SQL Server terinstal, jika Anda bisa.
  • Ini bukanlah ide yang baik untuk menggunakan T-SQL Debugger pada server produksi. Sementara dalam langkah eksekusi mode, debugger dapat mengunci tertentu sumber daya sistem yang harus mengakses proses lainnya.
  • Pastikan bahwa Anda memiliki versi T-SQL Debugger yang benar Komponen berkas.
    • Komponen server termasuk Mssdi98.dll dan Sqldbg.dll.
    • Komponen klien termasuk Sqldbreg.exe dan Sqldbg.dll.
    Mssdi98.dll file harus dalam folder yang sama sebagai Sqlservr.exe file. Secara default, Mssdi98.dll adalah dalam BINN folder. Secara default, Sqldbg.dll dan Sqldbreg.exe berada di folder SQL Debugging. SQL Debugging folder ada di lokasi berikut:
    Program program Files\Microsoft bersama

REFERENSI

Untuk informasi tambahan, klik berikut artikel nomor untuk melihat artikel di dalam Basis Pengetahuan Microsoft:
170496  (http://support.microsoft.com/kb/170496/ ) Tips untuk debugging disimpan prosedur dari Visual Basic
310650  (http://support.microsoft.com/kb/310650/ ) Masalah yang dikenal dengan Visual Basic T-SQL Debugger dan SQL Server 2000
280101  (http://support.microsoft.com/kb/280101/ ) Transact-SQL Debugger keterbatasan dan tips pemecahan masalah untuk SQL Server 2000
Untuk informasi lebih lanjut tentang debugging SQL, kunjungi situs Web Microsoft Developer Network (MSDN) berikut:
.aspx http://msdn2.Microsoft.com/en-us/library/zefbf0t6 (vs.71) (http://msdn2.microsoft.com/en-us/library/zefbf0t6(vs.71).aspx)

Berlaku bagi:
  • Microsoft Visual Studio .NET 2003 Professional Edition
  • Microsoft Visual Studio .NET 2003 Enterprise Architect
  • Microsoft Visual Studio .NET 2003 Enterprise Developer
  • Microsoft Visual Studio .NET 2003 Academic Edition
  • Microsoft Visual Studio .NET 2002 Professional Edition
  • Microsoft Visual Studio .NET 2002 Enterprise Architect
  • Microsoft Visual Studio .NET 2002 Enterprise Developer
  • Microsoft Visual Studio .NET 2002 Academic Edition
  • Microsoft SQL Server 2000 Standard Edition
Kata kunci: 
kbtshoot kbdebug kbtsql kbinfo kbmt KB817178 KbMtid
Penerjemahan MesinPenerjemahan Mesin
PENTING: 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:817178  (http://support.microsoft.com/kb/817178/en-us/ )