-
@@IDENTITY
वर्तमान सत्र में किसी भी तालिका के लिए सभी क्षेत्रों में उत्पन्न अंतिम पहचान मान लौटाता है। आपको यहां सावधान रहने की जरूरत है , क्योंकि यह सभी क्षेत्रों में है। आप अपने वर्तमान विवरण के बजाय एक ट्रिगर से एक मान प्राप्त कर सकते हैं।
-
SCOPE_IDENTITY()
वर्तमान सत्र और वर्तमान दायरे में किसी भी तालिका के लिए उत्पन्न अंतिम पहचान मान लौटाता है। आम तौर पर आप क्या उपयोग करना चाहते हैं ।
-
IDENT_CURRENT('tableName')
किसी भी सत्र और किसी भी दायरे में किसी विशिष्ट तालिका के लिए उत्पन्न अंतिम पहचान मान लौटाता है। यह आपको यह निर्दिष्ट करने देता है कि आप किस तालिका से मूल्य चाहते हैं, यदि उपरोक्त दोनों वह नहीं हैं जो आपको चाहिए (बहुत दुर्लभ ) साथ ही, जैसा कि @Guy Starbuck ने उल्लेख किया है, "यदि आप उस तालिका के लिए वर्तमान पहचान मान प्राप्त करना चाहते हैं, जिसमें आपने कोई रिकॉर्ड नहीं डाला है, तो आप इसका उपयोग कर सकते हैं।"
-
OUTPUT
INSERT
. का खंड कथन आपको उस कथन के माध्यम से डाली गई प्रत्येक पंक्ति तक पहुंचने देगा। चूंकि यह विशिष्ट कथन के दायरे में है, इसलिए यह अधिक सरल है उपरोक्त अन्य कार्यों की तुलना में। हालांकि, यह थोड़ा अधिक क्रिया है (आपको एक तालिका चर/अस्थायी तालिका में सम्मिलित करना होगा और उसके बाद क्वेरी करना होगा) और यह एक त्रुटि परिदृश्य में भी परिणाम देता है जहां कथन वापस ले जाया जाता है। उस ने कहा, यदि आपकी क्वेरी समानांतर निष्पादन योजना का उपयोग करती है, तो यह केवल गारंटीकृत विधि . है पहचान प्राप्त करने के लिए (समानांतरता को बंद करने की कमी)। हालांकि, इसे पहले . निष्पादित किया जाता है ट्रिगर करता है और ट्रिगर-जनरेट किए गए मान वापस करने के लिए उपयोग नहीं किया जा सकता है।