AUTO_INCREMENT বৈশিষ্ট্যটি নতুন সারিগুলির জন্য একটি অনন্য পরিচয় তৈরি করতে ব্যবহৃত হয়৷ যদি একটি কলামকে 'NOT NULL' হিসাবে ঘোষণা করা হয়, তাহলে সংখ্যার একটি ক্রম তৈরি করতে সেই কলামে NULL বরাদ্দ করা সম্ভব৷
যখন কোনো মান একটি AUTO_INCREMENT কলামে ঢোকানো হয়, তখন কলামটি সেই মানটিতে সেট হয়ে যায় এবং ক্রমটিও রিসেট হয়ে যায় যাতে এটি স্বয়ংক্রিয়ভাবে মানগুলি তৈরি করে, সবচেয়ে বড় কলামের মান থেকে অনুক্রমিক পরিসরে৷
একটি বিদ্যমান 'AUTO_INCREMENT' কলাম আপডেট করা যেতে পারে যা 'AUTO_INCREMENT' ক্রমটিকেও পুনরায় সেট করবে। সবচেয়ে সাম্প্রতিক স্বয়ংক্রিয়ভাবে তৈরি ‘AUTO_INCREMENT; এসকিউএল-এ 'LAST_INSERT_ID()' ফাংশন ব্যবহার করে বা 'mysql_insert_id()' ব্যবহার করে মান পুনরুদ্ধার করা যেতে পারে যা একটি C API ফাংশন।
এই ফাংশনগুলি সংযোগ-নির্দিষ্ট, যার অর্থ হল তাদের রিটার্ন মান অন্যান্য সংযোগ দ্বারা প্রভাবিত হয় না যা সন্নিবেশ ক্রিয়া সম্পাদন করে। 'AUTO_INCREMENT' কলামের জন্য ক্ষুদ্রতম পূর্ণসংখ্যা ডেটা টাইপ ব্যবহার করা যেতে পারে, যা ব্যবহারকারীর জন্য প্রয়োজনীয় সর্বাধিক ক্রম মান ধরে রাখতে যথেষ্ট বড় হবে৷
AUTO_INCREMENT এর জন্য নিয়ম
AUTO_INCREMENT অ্যাট্রিবিউট -
ব্যবহার করার সময় নিম্নলিখিত নিয়মগুলি অনুসরণ করা প্রয়োজন৷-
প্রতিটি টেবিলে শুধুমাত্র একটি AUTO_INCREMENT কলাম থাকে যার ডেটা টাইপ সাধারণত পূর্ণসংখ্যা হবে৷
-
AUTO_INCREMENT কলামটি ইন্ডেক্স করা দরকার। এর মানে হল এটি একটি প্রাথমিক কী বা একটি অনন্য সূচক হতে পারে৷
৷ -
AUTO_INCREMENT কলামে অবশ্যই একটি NULL সীমাবদ্ধতা থাকবে না।
-
যখন AUTO_INCREMENT অ্যাট্রিবিউট একটি কলামে সেট করা হয়, তখন MySQL স্বয়ংক্রিয়ভাবে কলামে NOT NULL সীমাবদ্ধতা যোগ করে।
যদি টেবিলে একটি আইডি কলাম যোগ করা না হয়, তাহলে নিচের বিবৃতিটি ব্যবহার করা যেতে পারে −
ALTER TABLE tableName ADD id INT UNSIGNED NOT NULL AUTO_INCREMENT, ADD INDEX (id);
যদি একটি আইডি কলাম ইতিমধ্যেই উপস্থিত থাকে, তাহলে নীচের কমান্ডটি ব্যবহার করা যেতে পারে −
ALTER TABLE tableName AUTO_INCREMENT=specificValue;
এখানে, tableName সারণির নামকে নির্দেশ করে যেটি fr 'AUTO_INCREMENT' কলাম সেট করতে হবে। 'নির্দিষ্ট মান' বলতে এমন একটি পূর্ণসংখ্যাকে বোঝায় যেখান থেকে ব্যবহারকারীর দ্বারা শুরু করার জন্য 'AUTO_INCREMENT' মানগুলি নির্দিষ্ট করা হয়৷