ఈ ట్యుటోరియల్లో, ఒరాకిల్ సీక్వెన్స్లతో పనిచేసేటప్పుడు NEXTVAL ఫంక్షన్ను ఎలా ఉపయోగించాలో నేర్చుకుంటాము.
గమనిక: ఈ ట్యుటోరియల్ ఒరాకిల్ సీక్వెన్స్ను సృష్టించే ప్రాథమిక అంశాలను కవర్ చేయదు. మరిన్ని తెలుసుకోవడానికి ఒరాకిల్ సీక్వెన్స్లపై మా ట్యుటోరియల్ని చూడండి.
ఒరాకిల్ నెక్స్ట్వాల్ ఫంక్షన్
ఒరాకిల్ సీక్వెన్స్లోని నెక్స్ట్వల్ ఫంక్షన్ ఇచ్చిన క్రమంలో తదుపరి విలువను పొందేందుకు ఉపయోగించబడుతుంది.
కింది కోడ్ స్నిప్పెట్లో చూపిన విధంగా మనం ఫంక్షన్ యొక్క సింటాక్స్ని వ్యక్తీకరించవచ్చు:
sequence_name.nextval
ఫంక్షన్ ఏ వాదన లేదా పరామితిని అంగీకరించదు. ఇది నిర్వచించిన క్రమంలో తదుపరి విలువను అందిస్తుంది.
ఉదాహరణ ఫంక్షన్ ప్రదర్శన
ఒక ఉదాహరణను పరిగణలోకి తీసుకుందాం. కింది కోడ్లో చూపిన విధంగా మేము సాధారణ ఒరాకిల్ క్రమాన్ని నిర్వచించడం ద్వారా ప్రారంభిస్తాము:
సీక్వెన్స్ టెస్ట్_సీక్వెన్స్ని సృష్టించండిప్రారంభించండి 1
ఇంక్రిమెంట్ ద్వారా 1 ;
కొత్త ఒరాకిల్ సీక్వెన్స్ని ప్రారంభించడానికి మేము క్రియేట్ సీక్వెన్స్ స్టేట్మెంట్ని ఉపయోగిస్తాము. మేము ఏ విలువతో క్రమం ప్రారంభమవుతుందో మరియు ప్రతి కొత్త ఉత్పత్తి విలువకు ఇంక్రిమెంట్ విలువను నిర్వచించాము.
మా ఉదాహరణలో, test_sequence 1 విలువతో మొదలవుతుంది మరియు ప్రతి కొత్త విలువపై ఒకదానితో ఇంక్రిమెంట్ అవుతుంది. ఇది 1,2,3,4,5...మొదలైన సంఖ్యా విలువల శ్రేణిని రూపొందించాలి.
ఒరాకిల్ నెక్స్ట్వాల్ ఫంక్షన్ని ఉపయోగించడం
కింది వాటిలో చూపిన విధంగా మేము తదుపరి విలువను పొందడానికి test_sequence క్రమం నుండి తదుపరి విలువ ఫంక్షన్ని ఉపయోగించవచ్చు:
ఎంచుకోండి ద్వంద్వ నుండి test_sequence.nextval;కింది వాటిలో చూపిన విధంగా ఇది క్రమం నుండి తదుపరి విలువను తిరిగి ఇవ్వాలి:
మీరు స్టేట్మెంట్కు మళ్లీ కాల్ చేస్తే, అది సిరీస్లోని తదుపరి విలువ 2ని అందించాలి.
విలువలు అయిపోయే వరకు లేదా మీరు క్రమంలో నిర్వచించబడిన గరిష్ట విలువను తాకే వరకు ఇది కొనసాగుతుంది. కనిష్ట మరియు గరిష్ట విలువలను ఎలా సెట్ చేయాలో తెలుసుకోవడానికి మా ఒరాకిల్ సీక్వెన్స్ ట్యుటోరియల్ని తనిఖీ చేయండి.
విలువలను లూప్ చేయడానికి Nextval ఫంక్షన్ని ఉపయోగించడం
కింది కోడ్లో చూపిన విధంగా 1 నుండి 10 వరకు ఉన్న సంఖ్యలను ప్రింట్ చేయడానికి మేము nextval ఫంక్షన్ని కూడా ఉపయోగించవచ్చు:
సీక్వెన్స్ లూపర్_సీక్వెన్స్ని సృష్టించండిప్రారంభించండి 1
ఇంక్రిమెంట్ ద్వారా 1 ;
సెట్ SERVEROUTPUT ఆన్;
ప్రారంభం
నేను IN కోసం 1 .. 10
లూప్
DBMS_OUTPUT.PUT_LINE ( looper_sequence.nextval ) ;
ముగింపు లూప్;
ముగింపు;
అందించిన కోడ్ looper_sequence అనే కొత్త క్రమాన్ని సృష్టిస్తుంది, అది 1 నుండి ప్రారంభమవుతుంది మరియు ప్రతి కొత్త ఉత్పత్తి విలువకు 1 ద్వారా పెరుగుతుంది.
మేము SQL*Plus కన్సోల్లో సందేశాలను ప్రదర్శించడానికి DBMS_OUTPUT ప్యాకేజీని అనుమతించే SERVEROUTPUT ఎంపికను ప్రారంభిస్తాము.
చివరగా, మేము 1 నుండి 10 వరకు ఉన్న విలువల పరిధిని మళ్ళించడానికి ముగింపు/ప్రారంభ స్టేట్మెంట్ లోపల లూప్ని జతచేస్తాము. ఆపై మేము పరిధిలోని ప్రతి విలువకు DBMS_OUTPUT.PUT_LINE ఫంక్షన్కి కాల్ చేస్తాము మరియు తదుపరి విలువను లూపర్_సీక్వెన్స్ సీక్వెన్స్లో ప్రింట్ చేస్తాము కన్సోల్.
కోడ్ లూపర్ సీక్వెన్స్లో తదుపరి పది విలువలను ముద్రిస్తుంది. మా విషయంలో, ఇది 1 నుండి 10 వరకు లేదా 11 – 20 వరకు ఉంటుంది… మరియు ప్రతి కొత్త కాల్కి.
ఫలిత అవుట్పుట్ :
12
3
4
5
6
7
8
9
10
PL / SQL విధానం విజయవంతంగా పూర్తయింది.
ఇన్సర్ట్ స్టేట్మెంట్లో Nextval ఫంక్షన్ని ఉపయోగించడం
మేము ఇన్సర్ట్ స్టేట్మెంట్లోని నెక్స్ట్వల్ ఫంక్షన్ను కూడా ప్రాథమిక కీగా ఉపయోగించవచ్చు. ఉదాహరణకి:
లోపల పెట్టు వినియోగదారులు ( id ,మొదటి_పేరు,క్రెడిట్_కార్డ్,దేశం )విలువలు ( test_sequence.nextval, 'జేమ్స్ స్మిత్' , '4278793631436711' , 'యునైటెడ్ అరబ్ ఎమిరేట్స్' ) ;
ఇచ్చిన ఉదాహరణలో, టేబుల్లోని id నిలువు వరుస కోసం విలువను చొప్పించడానికి టెస్ట్_సీక్వెన్స్ నుండి నెక్స్ట్వల్ ఫంక్షన్ని పిలుస్తాము.
ముగింపు
ఈ పోస్ట్లో, ఒక క్రమంలో తదుపరి విలువను పొందడానికి Oracle nextval ఫంక్షన్ను ఎలా ఉపయోగించాలో మీరు కనుగొన్నారు. విలువల సెట్పై పునరావృతం చేయడానికి లేదా పట్టిక నిలువు వరుసలో ప్రత్యేక విలువను చొప్పించడానికి ఫంక్షన్ను ఎలా ఉపయోగించాలో కూడా మీరు నేర్చుకున్నారు.