ఎస్క్యూఎల్ ఆటో ఇన్క్రీమెంట్ ఫీల్డ్
ఆటో-ఇన్క్రీమెంట్ కొత్త రికార్డును పట్టింపుచేసినప్పుడు ప్రత్యేక సంఖ్యను ఉత్పత్తి చేస్తుంది.
AUTO INCREMENT ఫీల్డ్
మేము కొత్త రికార్డును ప్రవేశపెట్టడంలో ప్రధాన కీ ఫీల్డ్ యొక్క విలువను స్వయంచాలకంగా సృష్టించాలని సాధారణంగా ఆశిస్తాము.
మేము పట్టికలో ఒక auto-increment ఫీల్డ్ ని సృష్టించవచ్చు.
MySQL కొరకు సంకేతసాధనం
ఈ SQL వాక్యం "Persons" పట్టికలో "P_Id" నిలువను auto-increment ప్రధాన కీ గా నిర్వచిస్తుంది:
CREATE TABLE Persons ( P_Id int NOT NULL AUTO_INCREMENT, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255), PRIMARY KEY (P_Id) )
MySQL అనేది AUTO_INCREMENT పదాన్ని ఉపయోగిస్తుంది auto-increment పనిని నిర్వహించడానికి.
అప్రమేయంగా, AUTO_INCREMENT యొక్క ప్రారంభ విలువ అనికి ఉంటుంది 1, ప్రతి కొత్త రికార్డుకు ఒకటి పెరుగుతుంది.
మేము AUTO_INCREMENT సిక్వెన్సును ఇతర విలువలతో ప్రారంభించడానికి ఈ SQL వాక్యాన్ని ఉపయోగించండి:
ALTER TABLE Persons AUTO_INCREMENT=100
మేము "Persons" పట్టికలో కొత్త రికార్డును ప్రవేశపెట్టడానికి, మేము "P_Id" నిలువను నిర్ణయించకుండా ఉంటాము (అది స్వయంచాలకంగా ఒక ప్రత్యేక విలువను జోడిస్తుంది):
INSERT INTO Persons (FirstName,LastName) VALUES ('Bill','Gates')
పై సిక్వెన్స్ సూచికలో "Persons" పట్టికలో కొత్త రికార్డును ప్రవేశపెట్టుతుంది. "P_Id" యొక్క విలువను ప్రత్యేకంగా ఇవ్వబడుతుంది. "FirstName" ను "Bill" గా నిర్ధారించబడుతుంది, "LastName" సూచికను "Gates" గా నిర్ధారించబడుతుంది.
SQL Server కొరకు సంకేతసాధనం
ఈ SQL వాక్యం "Persons" పట్టికలో "P_Id" నిలువను auto-increment ప్రధాన కీ గా నిర్వచిస్తుంది:
CREATE TABLE Persons ( P_Id int PRIMARY KEY IDENTITY, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255) )
MS SQL అనేది IDENTITY పదాన్ని ఉపయోగిస్తుంది auto-increment పనిని నిర్వహించడానికి.
అప్రమేయంగా, IDENTITY యొక్క ప్రారంభ విలువ అనికి ఉంటుంది 1, ప్రతి కొత్త రికార్డుకు ఒకటి పెరుగుతుంది.
మేము "P_Id" నిలువను 20 నుండి ప్రారంభించి 10 కు పెరుగుతుంది అయినప్పుడు, identity ని IDENTITY(20,10) చేసి మార్చండి:
మేము "Persons" పట్టికలో కొత్త రికార్డును ప్రవేశపెట్టడానికి, మేము "P_Id" నిలువను నిర్ణయించకుండా ఉంటాము (అది స్వయంచాలకంగా ఒక ప్రత్యేక విలువను జోడిస్తుంది):
INSERT INTO Persons (FirstName,LastName) VALUES ('Bill','Gates')
పై సిక్వెన్స్ సూచికలో "Persons" పట్టికలో కొత్త రికార్డును ప్రవేశపెట్టుతుంది. "P_Id" యొక్క విలువను ప్రత్యేకంగా ఇవ్వబడుతుంది. "FirstName" ను "Bill" గా నిర్ధారించబడుతుంది, "LastName" సూచికను "Gates" గా నిర్ధారించబడుతుంది.
Access కొరకు సంకేతసాధనం
ఈ SQL వాక్యం "Persons" పట్టికలో "P_Id" నిలువను auto-increment ప్రధాన కీ గా నిర్వచిస్తుంది:
CREATE TABLE Persons ( P_Id int PRIMARY KEY AUTOINCREMENT, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(255), City varchar(255) )
MS Access అనేది AUTOINCREMENT పదాన్ని ఉపయోగిస్తుంది auto-increment పనిని నిర్వహించడానికి.
అప్రమేయంగా, AUTOINCREMENT యొక్క ప్రారంభ విలువ అనికి ఉంటుంది 1, ప్రతి కొత్త రికార్డుకు ఒకటి పెరుగుతుంది.
మేము "P_Id" నిలువను 20 నుండి ప్రారంభించి 10 కు పెరుగుతుంది అయినప్పుడు, autoincrement ని AUTOINCREMENT(20,10) చేసి మార్చండి:
మేము "Persons" పట్టికలో కొత్త రికార్డును ప్రవేశపెట్టడానికి, మేము "P_Id" నిలువను నిర్ణయించకుండా ఉంటాము (అది స్వయంచాలకంగా ఒక ప్రత్యేక విలువను జోడిస్తుంది):
INSERT INTO Persons (FirstName,LastName) VALUES ('Bill','Gates')
పై సిక్వెన్స్ సూచికలో "Persons" పట్టికలో కొత్త రికార్డును ప్రవేశపెట్టుతుంది. "P_Id" యొక్క విలువను ప్రత్యేకంగా ఇవ్వబడుతుంది. "FirstName" ను "Bill" గా నిర్ధారించబడుతుంది, "LastName" సూచికను "Gates" గా నిర్ధారించబడుతుంది.
ఓరాకల్ కోసం ఉపయోగించే సిక్వెన్స్ పద్ధతి
ఓరాకల్ లో కోడ్ కొంచెం సంక్రమించింది.
ఆరోక్రా ఉపయోగించండి
మీరు auto-increment ఫీల్డును సృష్టించడానికి sequence ద్వారా సిద్ధం చేయాలి (ఈ విషయం సంఖ్యల క్రమాన్ని ఉత్పత్తి చేస్తుంది).
క్రీట్ సీక్వెన్స్ పద్ధతి క్రమాన్ని ఉపయోగించండి: CREATE SEQUENCE seq_person MINVALUE 1 START WITH 1 INCREMENT BY 1
CACHE 10
పై కోడ్ సీక్వెన్స్ పద్ధతి "seq_person" పేరుతో ఒక క్రమం విషయం సృష్టించింది, ఇది 1 నుండి ప్రారంభమవుతుంది మరియు 1 నుండి పెరుగుతుంది. ప్రదర్శన సామర్ధ్యాన్ని పెంచడానికి ఈ విషయం పెండింగ్ విలువలను 10 వరకు కేశించి ఉంచుతుంది. CACHE ఆప్షన్ పెండింగ్ సీక్వెన్స్ విలువలను పెంచడానికి ఉపయోగిస్తారు.
ప్రతిపాదించిన "Persons" పట్టికలో కొత్త రికార్డును ప్రవేశపెట్టడానికి, మాకు nextval ఫంక్షన్ ఉపయోగించాలి (ఈ ఫంక్షన్ "seq_person" క్రమంలో తరువాత విలువను పొందుతుంది): INSERT INTO Persons (P_Id,FirstName,LastName)
VALUES (seq_person.nextval,'Lars','Monsen')