Database
 sql >> डेटाबेस >  >> RDS >> Database

टी-एसक्यूएल प्रिंट स्टेटमेंट का अवलोकन

किसी भी प्रोग्रामिंग भाषा में PRINT स्टेटमेंट महत्वपूर्ण होते हैं। वे उस रूटीन या प्रोग्राम को अनुमति देंगे जिसे आप किसी प्रकार के लॉग या जानकारी को देखने और विश्लेषण करने के लिए कंसोल में डंप करने के लिए चला रहे हैं। PRINTs एप्लिकेशन कोड के भीतर समस्याओं को डीबग करने के लिए मूल्यवान हैं इस लेख में, हम जटिल टी-एसक्यूएल संग्रहीत प्रक्रियाओं और कोड को डीबग करने में मदद करने के लिए प्रिंट स्टेटमेंट का प्रभावी ढंग से उपयोग करने का पता लगाएंगे।

S प्राप्त करना SQL प्रिंट के साथ टार्ट किया गया

केवल एक चीज जो आपको PRINT का उपयोग करने की आवश्यकता है वह है PRINT कमांड को उस मान से पहले जोड़ना जिसे आप कंसोल पर प्रिंट करना चाहते हैं। इस उदाहरण में, कंसोल SQL सर्वर प्रबंधन स्टूडियो होगा, जो कि प्राथमिक विकास वातावरण है जिससे अधिकांश SQL सर्वर डेवलपर्स परिचित हैं। SSMS के अंदर, आप एक क्वेरी चलाने के बाद "Messages" टैब पर अपने PRINT स्टेटमेंट देख सकते हैं।

परिणाम आपके डेटाबेस तालिकाओं से क्वेरी किए गए SQL को दिखाएंगे।

संदेश प्रिंट स्टेटमेंट दिखाएंगे

आइए निम्नलिखित कमांड को एक बैच में चलाएं:

--RUN A SELECT TO VIEW THE "RESULTS" TAB
SELECT 1

--RUN PRINT IN LOWERCASE
print 'hello coding sight reader'

--RUN PRINT IN UPPERCASE
PRINT 'HELLO CODING SIGHT READER'

यह स्क्रिप्ट निम्नलिखित बिंदु बनाती है:

  • उन SELECTs और PRINTs को एक साथ चलाया जा सकता है
  • चयन और प्रिंट परिणाम एसएसएमएस में अलग-अलग टैब में भरते हैं
  • प्रिंट स्टेटमेंट SQL सर्वर में केस-संवेदी नहीं होते हैं

सरल उदाहरण

T-SQL वैरिएबल से प्रिंट करना

नीचे दिए गए उदाहरण में, @PRINTVAR वैरिएबल "PRINTVAR" के स्ट्रिंग मान पर सेट है। फिर उस वैरिएबल को प्रबंधन कंसोल में दो अलग-अलग लाइनों पर CHAR(13) के साथ जोड़कर प्रिंट किया जाता है।


--SETING A VARIABLE AND PRINTING IT
DECLARE @PRINTVAR VARCHAR(500)
SET @PRINTVAR = 'PRINTVAR'
PRINT @PRINTVAR + CHAR(13) + @PRINTVAR --PRINT THE SAME VARIABLE TWICE ON DIFFERENT LINES.

अन्य प्रिंट करना D अता टी हाँ

NVARCHAR लक्ष्य डेटा प्रकार है जिसकी आवश्यकता तब होगी जब आप SSMS में कंसोल पर प्रिंट करेंगे। इसलिए अन्य डेटा प्रकारों को स्पष्ट रूप से NVARCHAR को कास्ट या कन्वर्ट के साथ डाला जा सकता है।

DECLARE @XML XML

SET @XML = '<root>
<A>*A*</A>
<B>*B*</B>
<C>*C*</C>
<body>*Body*</body>
</root>'
PRINT CAST(@XML as NVARCHAR(MAX))

मुद्रण a L . में T-SQL चर ऊप

नीचे दिए गए उदाहरण में, लूप के प्रत्येक पुनरावृत्ति के दौरान @I प्रकार का एक चर बढ़ाया जाएगा और मुद्रित किया जाएगा। यह एक रूटीन में परिवर्तनों की निगरानी के लिए PRINT उपयोग के मामले का एक अच्छा उदाहरण है।

--ITERATE IN A WHILE LOOP AND PRINT EACH ITERATION.
DECLARE @I INT = 1

WHILE(@I <= 20)
	BEGIN
		PRINT @I
		SET @I += 1
	END

जटिल उदाहरण

हमने टी-एसक्यूएल में प्रिंट स्टेटमेंट का उपयोग कैसे शुरू किया जाए, इसकी कई सरल अवधारणाओं को कवर किया है। आइए एक अधिक मजबूत और जटिल उदाहरण की जांच करें। हम एक संग्रहीत कार्यविधि बनाएंगे जो दो पूर्णांक मानों और उन दो मानों को एक साथ स्वीकार करेगी। जबकि उत्तर परिणामों पर वापस कर दिया जाएगा, हम PRINT स्टेटमेंट के साथ संदेशों में एक गुणन तालिका भी प्रदर्शित करेंगे।

हम NOCOUNT को भी सेट करेंगे ताकि हमें गुणन तालिका में 1 पंक्ति प्रभावित संदेश न मिले।

CREATE PROC SPX_MULTIPLY_VALUES(@A INT, @B INT)
AS

SET NOCOUNT ON --REMOVE THE 1 ROWS AFFECTED IN MESSAGE
SELECT @A * @B --RETURN ANSWER

--RETURN MULTIPLICATION TABLE
PRINT  '1  '+	'2  '+	'3  '+	'4  '+	'5  '+	'6  '+	'7  '+	'8  '+	'9  '+	'10 '
PRINT  '2  '+	'4  '+	'6  '+	'8  '+	'10 '+	'12 '+	'14 '+	'16 '+	'18 '+	'20 '
PRINT  '3  '+	'6  '+	'9  '+	'12 '+	'15 '+	'18 '+	'21 '+	'24 '+	'27 '+	'30 '
PRINT  '4  '+	'8  '+	'12 '+	'16 '+	'20 '+	'24 '+	'28 '+	'32 '+	'36 '+	'40 '
PRINT  '5  '+	'10 '+	'15 '+	'20 '+	'25 '+	'30 '+	'35 '+	'40 '+	'45 '+	'50 '
PRINT  '6  '+	'12 '+	'18 '+	'24 '+	'30 '+	'36 '+	'42 '+	'48 '+	'54 '+	'60 '
PRINT  '7  '+	'14 '+	'21 '+	'28 '+	'35 '+	'42 '+	'49 '+	'56 '+	'63 '+	'70 '
PRINT  '8  '+	'16 '+	'24 '+	'32 '+	'40 '+	'48 '+	'56 '+	'64 '+	'72 '+	'80 '
PRINT  '9  '+	'18 '+	'27 '+	'36 '+	'45 '+	'54 '+	'63 '+	'72 '+	'81 '+	'90 '
PRINT  '10 '+	'20 '+	'30 '+	'40 '+	'50 '+	'60 '+	'70 '+	'80 '+	'90 '+	'100 '

RETURN

--EXECUTE THE PROCEDURE FOR 1 X 8
EXEC dbo.SPX_MULTIPLY_VALUES 1,8

वास्तविक प्रक्रिया कॉल का परिणाम केवल दो पूर्णांकों को एक साथ गुणा करता है। प्रिंट स्टेटमेंट भी एक साथ चलते हैं और गुणन तालिका प्रदान करते हैं जिसके साथ हम गणित की जांच कर सकते हैं और वास्तव में 1 x 8 =8। यह प्रिंट स्टेटमेंट के माध्यम से संग्रहीत प्रक्रिया में अतिरिक्त विवरण लाने का एक अच्छा उदाहरण है।

मामलों का उपयोग करें

अतिरिक्त लॉगिंग

यहां उदाहरण बहुत जटिल नहीं थे, लेकिन वास्तविक दुनिया में, आप संग्रहित प्रक्रियाओं में कुछ जटिल तर्कों में भाग सकते हैं। PRINT स्टेटमेंट उन जटिलताओं को कम करने में मदद कर सकता है और चर और उनके अंदर होने वाली घटनाओं में अंतर्दृष्टि प्रदान कर सकता है। जब संदेह में एक प्रिंट विवरण जोड़ें, तो आप उन्हें टिप्पणी कर सकते हैं लेकिन प्रदान की गई अंतर्दृष्टि आपको बाद में समय और प्रयास बचा सकती है।

सारांश

हमने प्रिंट स्टेटमेंट को टी-एसक्यूएल में कवर किया है। यह संदेश उत्पन्न करता है जिसे SQL सर्वर प्रबंधन स्टूडियो में पुनर्प्राप्त किया जा सकता है या आपके SQL सर्वर डेटाबेस से पढ़ने वाले क्लाइंट एप्लिकेशन पर लौटाया जा सकता है। हमने टी-एसक्यूएल वेरिएबल्स के साथ-साथ अन्य डेटा प्रकार के विचारों को प्रिंट करने के दृष्टिकोण पर चर्चा की। हमने PRINT स्टेटमेंट को लूप में और एक अधिक जटिल संग्रहीत कार्यविधि का उपयोग यह दिखाने के लिए किया कि PRINTs दिन-प्रतिदिन के परिचालन तरीके से प्रदान कर सकते हैं।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. डुप्लिकेट डेटाबेस प्रश्नों को कम करने के लिए डेटाबेस कैशिंग का कोई रूप नहीं।

  2. SQLAlchemy में रॉ SQL को कैसे निष्पादित करें?

  3. लूप के बिना एक सेट या अनुक्रम उत्पन्न करें - भाग 1

  4. एकाधिक कॉलम में कैसे जुड़ें

  5. घुटना टेककर प्रतीक्षा आंकड़े :PAGEIOLATCH_SH