Makale numarası: 817178 - Son Gözden Geçirme: 01 Haziran 2007 Cuma - Gözden geçirme: 2.5

T-SQL Debugger, Visual Studio. NET'te için sorun giderme ipuçları

Sistem İpucuBu makale, kullandığınızdan farklı bir işletim sistemine yöneliktir. Sizinle ilgili olmayabilecek makale içeriği devre dışı bırakıldı.

Bu Sayfada

Hepsini aç | Hepsini kapa

Özet

Bu makalede, yönergeleri ve T-SQL hata ayıklayıcı, Microsoft Visual Studio. NET'te ilgili temel sorunlarını giderme yönergeleri içerir. Ancak, bu tam bir listesi değildir ve ortamınıza bazı sorunlar olabilir.T-SQL hata ayıklama hakkında ek bilgi için Microsoft Knowledge Base'deki makaleleri görüntülemek üzere aşağıdaki makale numaralarını tıklatın:
316549  (http://support.microsoft.com/kb/316549/ ) Saklı yordamlar, Visual Studio. NET'te hata ayıklama hakkında
SQL hata ayıklaması'nı etkinleştirme hakkında daha fazla bilgi için aşağıdaki Microsoft Developer Network (MSDN) Web sitesini ziyaret edin:
http://msdn2.microsoft.com/en-us/library/s0fk6z6e(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/s0fk6z6e(vs.71).aspx)

Daha fazla bilgi

T-SQL hata ayıklayıcı sorun giderme

T-SQL Debugger, Visual Studio. NET'te sorun gidermek için aşağıdaki yöntemleri kullanın:
  • Uzaktan yordam çağrısı (RPC) Hizmetleri sunucu bilgisayarda başlatıldığından emin olun. Bunu yapmak için şu adımları izleyin:
    1. Denetim Masası ' nda Services ' ı sağ tıklatın ve sonra ' ı tıklatın.
    2. Uzaktan yordam çağrısı (RPC) ve Uzaktan yordam çağrısı (RPC) Locator hizmetlerin çalıştığından emin olun ve sonra da bu hizmetleri otomatik olarak başlayacak şekilde ayarlayın.
  • T-SQL hata ayıklayıcı kullanıcı hesabının, okuma ve hata ayıklayıcı bileşenleri izinlerini SQL hata ayıklaması klasöründe execute emin olun. SQL hata ayıklaması klasörü aşağıdaki konumda iş:
    Paylaşılan program Files\Common Files\Microsoft
    Kullanıcı hesabının bu izinlere sahip, aşağıdaki hata iletisini alırsınız:
    T-SQL hata ayıklama oturumu başlatılamadı. Sqldbreg2.exe ve proxy/saplama DLL'SI sqldbg.dll bu makinede kayıtlı emin olun.
  • Saklı yordamın adını herhangi bir tırnak işareti içerdiğinden emin olun.

    Yordamlar, tırnak işaretleri içeren adlarını hata oluşan hatalar hakkında daha fazla bilgi için aşağıdaki MSDN Web sitesini ziyaret edin:
    http://msdn2.microsoft.com/en-us/library/abk849z6(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/abk849z6(vs.71).aspx)
  • Herhangi bir hata, 16 veya daha yüksek önem derecesi ile harekete geçiren bir RAISERROR deyimi saklı yordam içermediğinden emin olun. Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
    280099  (http://support.microsoft.com/kb/280099/ ) Hata: Transact-SQL hata ayıklayıcı, 16 veya daha yüksek önem derecesi ile herhangi bir hata başlatan bir RAISERROR deyimi içerir bir saklı yordamın debug olamaz
  • T-SQL hata ayıklayıcı hata Olay Görüntüleyicisi'ndeki günlükleri denetleyin.

    Daha fazla bilgi için aşağıdaki MSDN Web sitesini ziyaret edin:
    http://msdn2.microsoft.com/en-us/library/hcez68k4(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/hcez68k4(vs.71).aspx)
  • T-SQL hata ayıklayıcı, istemci bilgisayarı ile veritabanı sunucusu arasında iletişim kurmak için Dağıtılmış COM (DCOM) kullanır. Uzak kullanıcıların veritabanı sunucusu üzerindeki bir işlem hata ayıklayıcısını eklemek DCOM yapılandırma iyi bir fikirdir. DCOM izinleri ayarlar doğru değilse, sorunlar oluşabilir.

    DCOM izin ayarları hakkında daha fazla bilgi için aşağıdaki MSDN Web sitelerini ziyaret edin:
    http://msdn2.microsoft.com/en-us/library/s0t6w6kc(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/s0t6w6kc(vs.71).aspx)
    http://msdn2.microsoft.com/en-us/library/6ksc0a82(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/6ksc0a82(vs.71).aspx)
    http://msdn2.microsoft.com/en-us/library/aa291270(VS.71).aspx (http://msdn2.microsoft.com/en-us/library/aa291270(VS.71).aspx)
  • Uzak SQL hata ayıklaması'nı yükledikten sonra Microsoft SQL Server'ın yeni bir sürümünü yüklerseniz, uzaktan hata ayıklama için doğru bileşenler yüklü olduğundan emin olmak için uzak bileşenleri Kur çalıştırmalısınız.

    SQL uzaktan hata ayıklama hakkında daha fazla bilgi için aşağıdaki MSDN Web sitelerini ziyaret edin:
    http://msdn2.microsoft.com/en-us/library/bt727f1t(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/bt727f1t(vs.71).aspx)
    http://msdn2.microsoft.com/en-us/library/ey7ec813(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/ey7ec813(vs.71).aspx)
  • Uygulama olay günlüğünü ve SQL Server çalıştıran bilgisayardaki sistem olay günlüğünü inceleyin. Bunu yapmak için şu adımları izleyin:
    1. Denetim Masası'ndaki Yönetimsel Araçlar ' ı çift tıklatın.
    2. Olay Görüntüleyicisi ' ni çift tıklatın. Olay Görüntüleyicisi penceresinde uygulama olay günlüğünü ve sistem olay günlüğüne bakın.
  • T-SQL Debugger, Visual Studio'da düzgün olarak çalışması için .NET, <a2>bilgisayar adı</a2> ve <a4>SQL Server yükleme adı ile eşleşmelidir. SQL Server yükleme yeniden adlandırırsanız, bilgisayar adı, SQL Server yükleme adı eşleşmiyor ve T-SQL hata ayıklayıcısı başarısız. Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
    817253  (http://support.microsoft.com/kb/817253/ ) SORUN: saklı yordam, Visual Studio. NET'te SQL Server yeniden adlandırdıktan debug bağlantı, bir kısmı veya tamamı ingilizce olan içeriğe işaret edebilir.

    317241  (http://support.microsoft.com/kb/317241/ ) SORUN: bir ana bilgisayarı yeniden adlandırma, SQL Server saklı yordamı hata ayıklama başarısız olmasına neden olur
  • Terminal server istemci oturumundan T-SQL hata ayıklayıcı oturum başlatıldığından emin olun. Bir terminal sunucu istemcisi, Microsoft SQL Server 2000 yüklü olan bir terminal sunucusuna bağlanırken, T-SQL hata ayıklayıcı hata ayıklama seçenekleri kullanılamaz. Bu terminal sunucusu oturumu üzerinden terminal istemci bilgisayardan bir saklı yordamın hata ayıklama kullanılabilir değil.

    Terminal sunucusunun uygulama olay günlüğüne hata iletisi, aşağıdaki hata iletisine benzer:
    Hata ayıklayıcısını % SQLSERVER_MACHINENAME %(Error = 0x80070057 The parameter is incorrect. üzerinde bağlanılamıyor ). SQLLE.DLL yüklü olan ve üzerinde SQLSERVER_MACHINENAME % kayıtlı olduğu gibi istemci tarafındaki bileşenler emin olun. Hata ayıklama için bağlantı 54 devre dışı.
    Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
    280100  (http://support.microsoft.com/kb/280100/ ) Hata: Transact-SQL hata ayıklayıcı Terminal Server üzerinden kullanılamaz oturum
  • Aynı ada sahip iki saklı yordamda sahip olduğunuzu doğrulayın. Veritabanı sahibi tarafından (DBO) ait bir saklı yordam ve diğer saklı yordamın olmayan DBO kullanıcı tarafından aittir. Iki saklı yordamlar, aynı ada sahip, ancak farklı sahibi olan varsa, kullanıcıların hiçbiri T-SQL hata ayıklayıcısını kullanarak saklı bir yordam adım.Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
    296539  (http://support.microsoft.com/kb/296539/ ) Hata: T-SQL hata ayıklayıcı olmayan DBO kullanıcılara ait aynı ada sahip, saklı yordamlar atlama izin vermiyor
  • Hata ayıklamak istediğiniz saklı yordamın sahip olduğundan emin olun. T-SQL hata ayıklayıcı'Aksi halde, saklı yordamlar hata ayıklama edemiyor Microsoft SQL Server 2000 Service Pack 3 (SP3) yüklendikten sonra sahip. Size ait değil saklı yordam, debug, aşağıdakine benzer bir hata iletisi alabilirsiniz:
    Nesne 'sp_sdidebug üzerinde', 'dbname' veritabanı engellendi 1 [Microsoft] [ODBC SQL Server sürücüsü] [SQL Server] EXECUTE izni sunucu: <a1>hata</a1> 229, Düzey 14, durum 5, Procedure sp_sdidebug, satır <a1>sahibi</a1> 'sahibin adı'.
    Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
    328173  (http://support.microsoft.com/kb/328173/ ) SORUN: Başka bir kullanıcının sahibi olduğu saklı yordamlar BIR veritabanında kullanıcı debug olamaz
  • Saklı yordamın hata izinleri execute sahip olduğundan emin olun. Saklı yordam hata yürütme izinleri olan değil, aşağıdakine benzer bir hata iletisi alırsınız:
    Sunucu: Msg 229, Düzey 14, State 5, Procedure sp_sdidebug, Hat 1 [Microsoft] [ODBC SQL Server sürücüsü] [SQL Server] EXECUTE permission denied sp_sdidebug' nesne', 'dbname' veritabanı, sahibi 'dbowner'.
    Vermek için yürütme izinlerini hata saklı yordam, Query Analyzer'da aşağıdaki komutu çalıştırarak ayıklamayı:
    GRANT EXECUTE
    ON sp_sdidebug 
    TO <myUserName>
    
  • Sunucunuz Microsoft SQL Server 2000 SP3, aşağıdaki çalıştırmalısınız: SQL Server çalıştıran bilgisayar üzerinde
    EXECUTE  sp_sdidebug 'LEGACY_ON' 
    başlatır zaman. Bunu el ile Sorgu Çözümleyicisi ' yapabilirsiniz. SP3'te eklenen yeni bir güvenlik anahtarı budur.
  • T-SQL hata ayıklayıcısı düzgün çalıştığından emin olmak için T-SQL hata ayıklayıcı, SQL Server yüklü olduğu, aynı bilgisayarda sınayın.
  • Bir üretim sunucusuna T-SQL hata ayıklayıcısını kullanmak iyi bir fikir değildir. Hata ayıklayıcısını adımı yürütme modunda çalışırken, diğer işlemler erişmesi gereken bazı sistem kaynaklarını kilitleyebilirsiniz.
  • T-SQL hata ayıklayıcı doğru sürümlerine sahip olduğunuzdan emin bileşen dosyaları.
    • Sunucu bileşenlerini Mssdi98.dll ve Sqldbg.dll içerir.
    • Istemci bileşenleri Sqldbreg.exe ve Sqldbg.dll içerir.
    Mssdi98.dll dosya Sqlservr.exe dosyasıyla aynı klasörde olması gerekir. Varsayılan olarak, Mssdi98.dll BINN klasöründedir. Varsayılan olarak, Sqldbg.dll ve Sqldbreg.exe SQL hata ayıklaması klasörde bulunur. SQL hata ayıklaması aşağıdaki konumda klasördür:
    Paylaşılan program Files\Common Files\Microsoft

Referanslar

Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
170496  (http://support.microsoft.com/kb/170496/ ) Visual Basic'ten saklı yordamlar hata ayıklama için ipuçları
310650  (http://support.microsoft.com/kb/310650/ ) Visual Basic T-SQL hata ayıklayıcısı ve SQL Server 2000 ile ilgili bilinen sorunlar
280101  (http://support.microsoft.com/kb/280101/ ) Transact-SQL hata ayıklayıcı sınırlamaları ve SQL Server 2000 için sorun giderme ipuçları
SQL hata ayıklaması hakkında daha fazla bilgi için aşağıdaki Microsoft Developers Network (MSDN) Web sitesini ziyaret edin:
http://msdn2.microsoft.com/en-us/library/zefbf0t6(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/zefbf0t6(vs.71).aspx)

Bu makaledeki bilginin uygulandığı durum:
  • 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
Anahtar Kelimeler: 
kbmt kbtshoot kbdebug kbtsql kbinfo KB817178 KbMttr
Otomatik TercümeOtomatik Tercüme
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:817178  (http://support.microsoft.com/kb/817178/en-us/ )