Oracle Database
दृश्यों
खोज…
वाक्य - विन्यास
- सृजन की योजना INTEGER के साथ स्टार्ट | MAXVALUE INTEGER | NOMAXVALUE INTEGER | न्यूनतम INTEGER | NOMINVALUE INTEGER | CYCLE INTEGER | NOCYCLE INTEGER | CACHE | NOCACHE | आदेश | NOODER}
पैरामीटर
पैरामीटर | विवरण |
---|---|
योजना | स्कीमा नाम |
द्वारा वेतन वृद्धि | संख्याओं के बीच का अंतराल |
के साथ शुरू | पहले नंबर की जरूरत |
अधिकतम मूल्य | अनुक्रम के लिए अधिकतम मूल्य |
nomaxvalue | अधिकतम मान डिफ़ॉल्ट है |
MINVALUE | अनुक्रम के लिए न्यूनतम मूल्य |
nominvalue | न्यूनतम मान डिफ़ॉल्ट है |
चक्र | इस मान पर पहुंचने के बाद शुरू करने के लिए रीसेट करें |
nocycle | चूक |
कैश | विलंबित सीमा |
nocache | चूक |
गण | संख्याओं के क्रम की गारंटी दें |
कोई आदेश नहीं | चूक |
अनुक्रम बनाना: उदाहरण
उद्देश्य
एक अनुक्रम बनाने के लिए क्रिएट सीन स्टेटमेंट का उपयोग करें, जो एक डेटाबेस ऑब्जेक्ट है जिसमें से कई उपयोगकर्ता अद्वितीय पूर्णांक उत्पन्न कर सकते हैं। आप स्वचालित रूप से प्राथमिक कुंजी मान उत्पन्न करने के लिए दृश्यों का उपयोग कर सकते हैं।
जब एक अनुक्रम संख्या उत्पन्न होती है, तो अनुक्रम बढ़ जाता है, लेनदेन करने या वापस रोल करने से स्वतंत्र होता है। यदि दो उपयोगकर्ता समवर्ती क्रम में वृद्धि करते हैं, तो प्रत्येक उपयोगकर्ता द्वारा प्राप्त अनुक्रम संख्या में अंतराल हो सकता है, क्योंकि अनुक्रम संख्या अन्य उपयोगकर्ता द्वारा उत्पन्न की जा रही है। एक उपयोगकर्ता दूसरे उपयोगकर्ता द्वारा उत्पन्न अनुक्रम संख्या को कभी भी प्राप्त नहीं कर सकता है। किसी उपयोगकर्ता द्वारा अनुक्रम मान उत्पन्न करने के बाद, उपयोगकर्ता उस मूल्य तक पहुँच प्राप्त करना जारी रख सकता है, चाहे वह अनुक्रम किसी अन्य उपयोगकर्ता द्वारा बढ़ाया गया हो।
अनुक्रम संख्या तालिकाओं से स्वतंत्र रूप से उत्पन्न होती है, इसलिए उसी अनुक्रम का उपयोग एक या कई तालिकाओं के लिए किया जा सकता है। यह संभव है कि व्यक्तिगत अनुक्रम संख्या छोड़ दी गई प्रतीत होगी, क्योंकि वे उत्पन्न हुए थे और एक लेनदेन में उपयोग किए गए थे जो अंततः वापस लुढ़क गए थे। इसके अतिरिक्त, एक उपयोगकर्ता को यह महसूस नहीं हो सकता है कि अन्य उपयोगकर्ता उसी क्रम से आरेखित कर रहे हैं।
अनुक्रम बनाए जाने के बाद, आप CURRVAL pseudocolumn के साथ SQL कथनों में इसके मानों को एक्सेस कर सकते हैं, जो अनुक्रम के वर्तमान मूल्य या NEXTVAL pseudocolumn को लौटाता है, जो अनुक्रम को बढ़ाता है और नया मान लौटाता है।
आवश्यक शर्तें
अपने स्वयं के स्कीमा में एक अनुक्रम बनाने के लिए, आपके पास सृजन क्षमता प्रणाली विशेषाधिकार होना चाहिए।
किसी अन्य उपयोगकर्ता के स्कीमा में एक सीक्वेंस बनाने के लिए, आपके पास किसी भी SEQUENCE सिस्टम विशेषाधिकार होना चाहिए।
अनुक्रम बनाना: उदाहरण निम्न कथन नमूना स्कीमा oe में अनुक्रम customers_seq बनाता है। इस क्रम का उपयोग ग्राहक आईडी नंबर प्रदान करने के लिए किया जा सकता है जब पंक्तियों को ग्राहकों की तालिका में जोड़ा जाता है।
CREATE SEQUENCE customers_seq
START WITH 1000
INCREMENT BY 1
NOCACHE
NOCYCLE;
Customers_seq.nextval का पहला संदर्भ 1000 देता है। दूसरा 1001 देता है। प्रत्येक बाद का संदर्भ पिछले मान की तुलना में 1 मान अधिक लौटाएगा।