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

SQL सर्वर संग्रहीत प्रक्रिया से webservice कैसे शुरू करें

ऐसा कुछ करने के लिए, आपको पूर्ण वेब सेवा कार्यान्वयन की आवश्यकता नहीं है। आप URL को अनुरोध सबमिट करने के लिए SQLCLR (SQL सर्वर का .NET एकीकरण) का उपयोग कर सकते हैं, XML में प्रतिक्रिया वापस प्राप्त कर सकते हैं (जब तक कि आपको JSON लाइब्रेरी नहीं मिल जाती है जो बिना काम करेगी) UNSAFE . पर सेट किया जा रहा है ), और फिर उस प्रतिक्रिया को पार्स करें।

निम्नलिखित MSDN पृष्ठों को देखें:

  • HttpWebRequest
  • HttpWebResponse
  • XmlDocument
  • पते से बचने के लिए:
    • यदि आप SQL Server 2005, 2008, या 2008 R2 का उपयोग कर रहे हैं, तो उरी.एस्केपडाटास्ट्रिंग क्योंकि यह .NET Framework v4.5 से पहले उपलब्ध था
    • यदि आप SQL सर्वर 2012, 2014, या नए का उपयोग कर रहे हैं, तो आप या तो Uri.EscapeDataString का उपयोग कर सकते हैं या, यदि सर्वर को कम से कम .NET Framework v4.5 में अपडेट किया गया है, तो आप वैकल्पिक रूप से WebUtility.UrlEncode

Google जियोकोडिंग API दस्तावेज़ के अनुसार , API URI को निम्न के समान स्वरूपित किया जाना चाहिए:

https://maps.googleapis.com/maps/api/geocode/xml?address={EscapedAddress}&key={API_KEY}

बस सबमिट करें कि उन 2 चरों के साथ HttpWebRequest . के माध्यम से उनके उचित मूल्यों के साथ प्रतिस्थापित किया गया है , फिर कॉल करें HttpWebRequest.GetResponse , फिर HttpWebResponse.GetResponseStream . पर कॉल करें . और नहीं करें Close . को कॉल करना न भूलें और Dispose HttpWebResponse . के तरीके (या इसे using . में तत्काल करें ब्लॉक)!!

अतिरिक्त नोट:

  • यदि पहले से नहीं किया गया है, तो आपको सर्वर स्तर पर (एक बार) "सीएलआर एकीकरण" सक्षम करना होगा:CLR इंटीग्रेशन को सक्षम करना
  • आसान रास्ता न अपनाएं और डेटाबेस को TRUSTWORTHY ON पर सेट करें . बस पासवर्ड के साथ असेंबली पर हस्ताक्षर करें, फिर master . में एक असममित कुंजी बनाएं अपने हस्ताक्षरित DLL को इंगित करके डेटाबेस, फिर उस असममित कुंजी से एक लॉगिन बनाएं, और अंत में उस लॉगिन को UNSAFE ASSEMBLY प्रदान करें अनुमति। फिर आप असेंबली WITH PERMISSION_SET = EXTERNAL_ACCESS के साथ सेट कर सकते हैं ।
  • SP_OA* प्रक्रियाओं का प्रयोग उपयोगकर्ता द्वारा समर्थित के रूप में न करें3469363 . उन ओएलई ऑटोमेशन प्रक्रियाओं को SQL सर्वर 2005 के बाद से हटा दिया गया है और (उम्मीद है) किसी दिन (उम्मीद है कि जल्द ही) हटा दिया जाएगा। वे SQLCLR की तुलना में कम कुशल और कम सुरक्षित भी हैं।
  • DBA.StackExchange पर इसी तरह के प्रश्न के मेरे उत्तर में और भी नोट्स मिल सकते हैं: वेब सेवा डेटा को SQL सर्वर में लाना


  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. SQL डेटाबेस पुनर्प्राप्ति लंबित पहुँच अस्वीकृत समस्या को ठीक करें

  3. TODATETIMEOFFSET () SQL सर्वर में उदाहरण

  4. एसक्यूएल-सर्वर के लिए एक चर में गतिशील एसक्यूएल का परिणाम प्राप्त करना

  5. टीएसक्यूएल डेटडिफ 2 दशमलव स्थानों के साथ दिनों की संख्या वापस करने के लिए