कुछ हद तक आधुनिक डेटाबेस का उपयोग करते हुए एकमात्र पूरी तरह से डेटाबेस-अज्ञेय समाधान, अद्यतन को कॉल करना है फिर दो परिचालनों में सम्मिलित करें। कुछ डेटाबेस एक ही ऑपरेशन में भेजे गए कई स्टेटमेंट की अनुमति नहीं देते हैं और कुछ डेटाबेस अपडेट से प्रभावित पंक्तियों की संख्या वापस नहीं कर सकते हैं, इसलिए मैं उस पर भरोसा नहीं करूंगा।
Update MyTable
Set Data = 'Data'
Where KeyCol = 'key';
(अलग कॉल)
Insert Into MyTable(KeyCol, Data)
Select 'key', 'Data'
From ( Select 1 As Value ) As Z
Where Not Exists (
Select 1
From MyTable As T1
Where T1.KeyCol = 'key'
);