AUTO_INCREMENT
In this page:
column_name INT AUTO_INCREMENT PRIMARY KEY
AUTO_INCREMENT को समझना
AUTO_INCREMENT MySQL को बताता है कि जब भी एक नई row insert हो तो automatically sequence में अगला integer generate करे, यही वजह है कि यह लगभग हमेशा एक primary-key ID column के साथ pair किया जाता है।
उदाहरण: Understanding AUTO_INCREMENT
CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50));
Start Value बदलना
Default रूप से sequence 1 से शुरू होता है और हर बार 1 बढ़ता है, लेकिन आप एक custom starting value set कर सकते हैं — data migrate करते समय उपयोगी जब नई IDs को किसी पुराने system की मौजूदा range से collide होने से बचना हो।
उदाहरण: Changing the Start Value
CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY) AUTO_INCREMENT = 1000;
मौजूदा Tables में AUTO_INCREMENT Add करना
आप ALTER TABLE के through एक मौजूदा column में AUTO_INCREMENT add कर सकते हैं, लेकिन वह column पहले से एक key (आमतौर पर primary key) की तरह defined होना ज़रूरी है — MySQL एक unindexed column के लिए automatically values generate नहीं करेगा।
उदाहरण: Adding AUTO_INCREMENT to Existing Tables
ALTER TABLE users MODIFY id INT AUTO_INCREMENT;
AUTO_INCREMENT हटाना
AUTO_INCREMENT हटाना आगे automatic number generation रोक देता है, यानी future inserts को उस column के लिए explicitly अपनी value supply करनी होगी या इसके बजाय एक DEFAULT पर depend करना होगा।
उदाहरण: Removing AUTO_INCREMENT
ALTER TABLE users MODIFY id INT;
Last Inserted ID Retrieve करना
LAST_INSERT_ID() same session के अंदर आपके सबसे हाल के insert से auto-generated ID return करता है, जो exactly वह है जो आपको एक parent row insert करके फिर तुरंत उसे reference करने वाले related child rows insert करते समय चाहिए।
उदाहरण: Retrieving the Last Inserted ID
CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50));
INSERT INTO users (name) VALUES ('Amit');
SELECT LAST_INSERT_ID();
AUTO_INCREMENTcolumn में एक value insert करना और फिर surprise होना कि sequence gaps भरने के बजाय उससे continue होता है।- यह मान लेना कि
AUTO_INCREMENTnumbers gap-free हैं, जबकि deleted rows और failed inserts gaps छोड़ते हैं जो दोबारा इस्तेमाल नहीं होते। - एक ऐसे column पर
AUTO_INCREMENTdeclare करना जो एक key नहीं है, जो एक error है क्योंकि इसे indexed होना ज़रूरी है।
NOT NULL,UNIQUE,DEFAULT, औरCHECKजैसे constraints column values पर rules enforce करते हैं।PRIMARY KEYहर row identify करता है, औरFOREIGN KEYtables को साथ link करता है।AUTO_INCREMENTनई rows के लिए automatically unique numbers generate करता है।
Chapter Quiz — Complete all 8 topics to unlock
0/8 topics done
Complete these topics first: