मैं SQL सर्वर प्रबंधन स्टूडियो 2008 में संग्रहित प्रक्रियाओं को डीबग करने का प्रयास कर रहा हूं। मैं कुछ आईएफ-स्टेटमेंट्स का परीक्षण करने के लिए कुछ प्रिंट स्टेटमेंट्स डालना चाहता हूं जो मुझे पता है कि गलत हैं।प्रिंट स्टेटमेंट के साथ संग्रहीत प्रक्रियाओं को डीबग कैसे करें?
डीबगिंग करने के लिए, मैंने PRINT '5'
कमांड का उपयोग करने का प्रयास किया।
मैंने RAISERROR
'RAISERROR (N'Start',10,1) WITH NOWAIT'
जैसे उपयोग करने का प्रयास किया।
लेकिन इन्हें कोई प्रिंटआउट नहीं दिखाया गया, केवल परिणाम सेट। संदेश सिर्फ 1 row affected
कहता है।
SET NOCOUNT ON
RAISERROR (N'Start',10,1) WITH NOWAIT
DECLARE @DocHandle INT
DECLARE @PageSize INT, @PageIndex INT, @TOTL_CONT NUMERIC(5,0), @Paging BIT
DECLARE @Type INT, @Search varchar(20) , @ORDE nVARCHAR(50), @SORT_ID nVARCHAR(50)
DECLARE @CreatedOn varchar(25), @SystemGenerate bit
सबसे अच्छा तरीका है एक संग्रहीत प्रक्रिया डिबग करने के लिए प्रिंट बयान का उपयोग करने के क्या है:
मैं बहुत की तरह कोड लिखने के लिए (शायद यह एक गलत दृष्टिकोण है) का प्रयास किया?
आप हमें अगर बयान दिखा सकते हैं? अगर यह मुद्रित नहीं होता है, तो संभवतः परीक्षण विफल हो गया और यह सशर्त ब्लॉक में प्रवेश नहीं किया। – Bridge
जब आप अपनी संग्रहीत प्रक्रिया को अपडेट करते हैं, या जब आप इसे वास्तव में निष्पादित करते हैं तो '1 पंक्ति प्रभावित' होती है? ऐसा कोई कारण नहीं है कि आपके द्वारा दिए गए कोड ने कुछ मुद्रित नहीं किया होगा (संदेश विंडो में, परिणामों के लिए नहीं)। जैसा कि बताया गया है, –