आप ALTER FUNCTION
का उपयोग करके SQL सर्वर में तालिका-मूल्यवान फ़ंक्शन (TVF) को बदल सकते हैं टी-एसक्यूएल सिंटैक्स।
आप बस ALTER FUNCTION
. का पालन करें नई परिभाषा के साथ। मूल रूप से यह CREATE FUNCTION
. का उपयोग करने जैसा है सिवाय इसके कि आप CREATE
. को बदल दें ALTER
. के साथ ।
उदाहरण
प्रदर्शित करने के लिए यहां एक उदाहरण दिया गया है:
ALTER FUNCTION dbo.udf_CatsByName_ITVF(@CatName varchar(70) ) SCHEMABINDINGASRETURN के साथ रिटर्न टेबल (चुनें CatId, CatName, फोन से dbo.Cats जहां CatName =@CatName );GO
यदि यह फ़ंक्शन पहले से मौजूद नहीं था, और मैं इसे पहली बार बना रहा था, तो मैं निम्नलिखित कोड का उपयोग करूंगा:
CREATE FUNCTION dbo.udf_CatsByName_ITVF(@CatName varchar(70) ) SCHEMABINDINGASRETURN के साथ रिटर्न टेबल (CateId, CatName, dbo से फोन चुनें। CatName =@CatName); जाओ
यह बिल्कुल वैसा ही है, सिवाय इसके कि यह CREATE
. से शुरू होता है ALTER
. के बजाय ।
छोड़ें और फिर से बनाएं
इसे करने का दूसरा तरीका यह है कि फ़ंक्शन को छोड़ दें और इसे फिर से बनाएं:
ड्रॉप फंक्शन अगर मौजूद है udf_CatsByName_ITVF;GOCREATE FUNCTION dbo.udf_CatsByName_ITVF(@CatName varchar(70) ) SCHEMABINDINGASRETURN के साथ टेबल लौटाता हैइस मामले में, मैंने डीआईई सिंटैक्स (ड्रॉप इफ एक्ज़िस्ट्स) का उपयोग किया, जिसका अर्थ है कि मुझे कोई त्रुटि नहीं मिलेगी यदि ऑब्जेक्ट इसे छोड़ने का प्रयास करने से पहले पहले से मौजूद नहीं है।
इनलाइन टीवीएफ बनाम मल्टी-स्टेटमेंट टीवीएफ
इस पृष्ठ के उदाहरण एक इनलाइन तालिका-मूल्यवान फ़ंक्शन का उपयोग करते हैं। मल्टी-स्टेटमेंट टीवीएफ पर भी यही अवधारणा लागू होती है।
प्रत्येक के अधिक विस्तृत उदाहरणों के लिए एक इनलाइन टेबल-वैल्यूड फंक्शन बनाएं और एक मल्टी-स्टेटमेंट टेबल-वैल्यूड फंक्शन बनाएं देखें।