OBJECT_ID
का उपयोग सिस्टम बेस टेबल में विशिष्ट रूप से ऑब्जेक्ट की पहचान करने के लिए किया जाता है।
sys.sysschobjs
आधार तालिका sys.objects
मेटाडेटा दृश्य द्वारा उपयोग की जाने वाली बेस तालिका की प्राथमिक कुंजी है और मेटाडेटा दृश्यों में से कई अन्य में दिखाई देती है। उदाहरण sys.partitions
। यदि आप इन विचारों से पूछताछ नहीं कर रहे हैं तो object_id
शायद नीचे उपयोगी वस्तु के लिए चेक में उपयोग करते समय बहुत उपयोगी नहीं है।
IF OBJECT_ID('T', 'U') IS NULL
/*Table T does not exist or no permissions*/
स्कीमा scoped वस्तु एक ही है कि एक स्कीमा (उदाहरण, एक मेज, देखने के लिए, संग्रहीत प्रक्रिया) के अंतर्गत आता है है। एमएसडीएन लेख डीडीएल ट्रिगर में एक गैर स्कीमा स्कोप्ड ऑब्जेक्ट का एक उदाहरण देता है।
यह कोशिश करते हैं और एक स्कीमा निर्दिष्ट करने के लिए एक त्रुटि जब इन
CREATE TRIGGER dbo.SomeTrigger /*Will Fail*/
ON DATABASE
FOR DROP_SYNONYM
AS
PRINT 'SomeTrigger'
गैर स्कीमा scoped वस्तुओं मेटाडाटा अभी भी sys.sysschobjs
में संग्रहित है बनाने लेकिन sys.objects
ध्यान में रखते हुए दिखाई नहीं देता है।
स्रोत
2012-02-21 10:48:09