में मान सेट करें, मैं एक संग्रहीत प्रक्रिया चाहूंगा जो पैरामीटर प्रदान किए जाने के आधार पर तालिका पंक्ति में मान अपडेट करेगी। उदाहरण के लिए, मेरे पास एक ऐसी स्थिति है जहां मैं सभी मानों को अपडेट करना चाहता हूं, लेकिन ऐसी स्थिति भी जहां मुझे केवल दो मानों को अपडेट करने की आवश्यकता है। मैं उम्मीद कर रहा था कि यह दो लिखने के बजाय केवल एक प्रक्रिया के साथ ऐसा करने में सक्षम हो, जो विशेष रूप से मुझसे अपील नहीं करता है।अद्यतन रूप से UPDATE कथन
CREATE PROCEDURE dbo.UpdatePerson
@PersonId INT,
@Firstname VARCHAR(50) = NULL,
@Lastname VARCHAR(50) = NULL,
@Email VARCHAR(50) = NULL
AS
BEGIN
SET NOCOUNT ON
UPDATE Person
Set
Firstname = COALESCE(@Firstname, Firstname),
Lastname = COALESCE(@LastName, Lastname),
Email = COALESCE(@Email, Email)
WHERE PersonId = @PersonId
END
मुझे लगता है कि मानों हर बार वैसे भी अपडेट कर दिया जाएगा, जो आदर्श नहीं है: सबसे अच्छा मैं अपने आप को साथ आने में कामयाब रहे निम्नलिखित की तरह कुछ है। क्या यह इसे प्राप्त करने का एक प्रभावी तरीका है, या इसे बेहतर तरीके से किया जा सकता है?
दिलचस्प लेख! – RedFilter
+1 उपयोगी और सूचनात्मक लेख। साझा करने के लिए धन्यवाद! –
धन्यवाद मार्टिन। जानने के लिए कुछ उपयोगी जानकारी। –