SQL सर्वर में, TVF क्वेरीज़ अंतर्निहित तालिकाओं से डेटा हटाने के लिए तालिका-मूल्यवान फ़ंक्शन (TVF) का उपयोग करना संभव है।
टीवीएफ के माध्यम से टेबल डेटा को हटाने के लिए, बस उसी टी-एसक्यूएल का उपयोग करें DELETE सिंटैक्स जिसका उपयोग आप सीधे तालिका से किसी पंक्ति को हटाते समय करेंगे।
उदाहरण
प्रदर्शित करने के लिए यहां एक त्वरित उदाहरण दिया गया है।
कार्य
यहां एक त्वरित इनलाइन तालिका-मूल्यवान फ़ंक्शन है जो किसी तालिका से मूल डेटा का चयन करता है।
CREATE FUNCTION dbo.udf_Cats_ITVF()
RETURNS TABLE
AS
RETURN (
SELECT
CatId,
CatName,
Phone
FROM dbo.Cats
);
GO
यह फ़ंक्शन किसी तालिका से सभी पंक्तियों का चयन करता है।
मैं इस फ़ंक्शन का उपयोग उस तालिका से पंक्तियों को हटाने के लिए भी कर सकता हूं।
फ़ंक्शन के साथ डेटा चुनें
यहां बताया गया है कि हम आमतौर पर SELECT . के साथ फ़ंक्शन को कैसे लागू करते हैं बयान। यह हमें अंतर्निहित तालिका में वर्तमान डेटा देखने में सक्षम बनाता है।
SELECT * FROM udf_Cats_ITVF();
परिणाम:
+---------+-----------+------------+ | CatId | CatName | Phone | |---------+-----------+------------| | 1 | Garfield | 9871237654 | | 2 | Felix | 8871237651 | | 3 | Tom | 7871237652 | | 4 | Fetch | 6871237653 | | 5 | Scratchy | 1111111111 | +---------+-----------+------------+
तो पाँच पंक्तियाँ हैं।
आइए स्क्रैची को हटा दें।
फ़ंक्शन के माध्यम से एक पंक्ति हटाएं
अब एक पंक्ति को मिटाने के लिए TVF का उपयोग करते हैं।
DELETE FROM udf_Cats_ITVF() WHERE CatId = 5; SELECT * FROM udf_Cats_ITVF();
परिणाम:
+---------+-----------+------------+ | CatId | CatName | Phone | |---------+-----------+------------| | 1 | Garfield | 9871237654 | | 2 | Felix | 8871237651 | | 3 | Tom | 7871237652 | | 4 | Fetch | 6871237653 | +---------+-----------+------------+
इसलिए मैंने इनलाइन टेबल-वैल्यू फ़ंक्शन का उपयोग करके स्क्रैची को सफलतापूर्वक हटा दिया।