2011-03-30 10 views
5

मैं स्थानों की संख्या में इस कोड के पार चला गया है के साथ एक बफर बनाना:डेटाबेस तालिका के रूप में एक ही नाम

  1. उद्देश्य क्या है:

    DEFINE BUFFER Customer FOR Customer. 
    

    मैं दो प्रश्न हैं इस का? टेबल के समान नाम के साथ बफर बनाने के लिए फायदेमंद क्यों है?

  2. इस तालिका/बफर तक पहुंचने के लिए कोड लिखते समय, प्रगति कैसे पता चलता है कि डीबी को सीधे या बफर के माध्यम से एक्सेस करना है या नहीं?

+0

@ टॉम बसकॉम जानता है कि, वह प्रगति कर रहा है 'जॉन स्कीट, क्षमा करें अगर मैंने अपना नाम व्यर्थ – Kyle

उत्तर

8

1: आमतौर पर यह बफर के दायरे को प्रबंधित करने के लिए किया जाता है।

यदि आपके पास, उदाहरण के लिए, कई आंतरिक प्रक्रियाओं के साथ एक प्रक्रिया है जो सभी एक ही तालिका तक पहुंचते हैं, तो उस तालिका के लिए डिफ़ॉल्ट बफर शीर्ष स्तर की प्रक्रिया ब्लॉक तक पहुंच जाएगा। उदाहरण के लिए -

procedure p1: 
    find first customer no-lock. 
end. 

procedure p2: 
    find last customer no-lock. 
end. 

युक्त प्रक्रिया करने के लिए ग्राहक बफर देखते हुए अंत होगा। यदि आप अपनी आंतरिक प्रक्रियाओं को कम से कम युग्मित और स्वयं निहित रखने की कोशिश कर रहे हैं, तो हो सकता है कि आप यह व्यवहार नहीं चाहें। तो आप प्रत्येक आंतरिक प्रक्रियाओं में एक बफर को परिभाषित करेंगे।

ओबीवी बफर को परिभाषित करने के अन्य कारण हैं, लेकिन जब आप कोड देखते हैं जो तालिका के समान नाम वाले बफर को परिभाषित करता है, तो यह आमतौर पर दायरे के बारे में होता है।

2: यह हमेशा एक बफर के माध्यम से डीबी तक पहुंचता है। हर तालिका तालिका के रूप में एक ही नाम के साथ एक डिफ़ॉल्ट बफर है, तो

find first <buffername>. 

एक बफर नामित buffername जो एक स्पष्ट रूप से परिभाषित बफर या एक अंतर्निहित डिफ़ॉल्ट बफर हो सकता है के लिए दिखेगा। यदि कोई मौजूद है तो प्राथमिकता एक स्पष्ट रूप से परिभाषित बफर पर जाएगी।

+1

में कहा है, तो इस तकनीक के बड़े फायदों में से एक यह है कि यह आकस्मिक साइड इफेक्ट्स, विशेष रूप से रिकॉर्ड-लॉक को प्रभावित करने से प्रभावित करता है, मुख्य प्रक्रिया या अन्य आंतरिक प्रक्रियाओं। –

+1

टिप्पणियों के लिए धन्यवाद गॉर्डन - यह एक महान स्पष्टीकरण था। मैं इसके पीछे तर्क समझता हूं, लेकिन मैं नामकरण सम्मेलन से सहमत नहीं हूं। मेरे लिए, एक बफर को अभी भी "बी-" के साथ उपसर्ग किया जाना चाहिए या कुछ और स्पष्टीकरण के लिए परिभाषित करना चाहिए कि आप बफर का संदर्भ दे रहे हैं। डीबी टेबल नाम का उपयोग बफर नाम के रूप में केवल कोड को होने की तुलना में कोड को और अधिक भ्रमित करने लगता है। – pmartin

संबंधित मुद्दे