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

टी-एसक्यूएल:संग्रहित प्रक्रिया के तर्क के रूप में संयोजित स्ट्रिंग पास नहीं कर सकता

EXECUTE स्टेटमेंट में बस एक अलग व्याकरण होता है, फिर अन्य स्टेटमेंट जैसे SELECT और SET। उदाहरण के लिए, निम्नलिखित दो पृष्ठों के शीर्ष पर वाक्य रचना अनुभाग देखें।

निष्पादित कथन:http://msdn.microsoft.com/en-us/ पुस्तकालय/ms188332.aspx

सेट स्टेटमेंट:http://msdn.microsoft.com/en-us/ लाइब्रेरी/ms189484.aspx

EXECUTE का सिंटैक्स केवल मान . स्वीकार करता है

जबकि SET का सिंटैक्स अभिव्यक्ति . को स्वीकार करता है

एक मूल्य मूल रूप से केवल एक कठिन कोडित स्थिरांक है, लेकिन एक अभिव्यक्ति का मूल्यांकन किया जा रहा है। यह वर्चर 'सेलेक्ट 1 + 1' होने जैसा है। यह अभी सिर्फ एक वर्चर वैल्यू है। हालांकि, आप मूल्यांकन कर सकते हैं इस तरह की स्ट्रिंग:

EXEC('SELECT 1 + 1')

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

टी-एसक्यूएल एक्सप्रेशन:http://msdn.microsoft.com/en- us/लाइब्रेरी/ms190286.aspx



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर 2012, भूगोल। ST शामिल है, गलत परिणाम?

  2. सी # से थोक डेटाबेस डालने का सबसे अच्छा तरीका क्या है?

  3. SQL सर्वर तालिका को भिन्न फ़ाइल समूह में ले जाना

  4. मैं इसकी प्रभावी तिथि के आधार पर वर्तमान रिकॉर्ड कैसे प्राप्त करूं?

  5. SQL सर्वर इंस्टेंस पर सभी डेटाबेस से प्राथमिक कुंजी बाधा की सूची कैसे प्राप्त करें - SQL सर्वर / TSQL ट्यूटोरियल भाग 60