আপনি অন্য টেবিল থেকে একটি MAX মান ব্যবহার করে MySQL AutoIncrement রিসেট করার জন্য প্রস্তুত বিবৃতি ব্যবহার করতে পারেন।
নিচের সিনট্যাক্স −
সেট করুন @anyVariableName1=(yourTableName1 থেকে MAX(yourColumnName) নির্বাচন করুন);SET @anyVariableName2 =CONCAT('ALTER TABLE yourTableName2AUTO_INCREMENT=', @anyVariableName1);প্রস্তুত করুন আপনার স্টেটমেন্টেরনাম 1উপরের সিনট্যাক্স অন্য টেবিল থেকে সর্বোচ্চ মান ব্যবহার করে MySQL auto_increment রিসেট করবে। উপরের সিনট্যাক্স বোঝার জন্য, আসুন দুটি টেবিল তৈরি করি। প্রথম টেবিলে রেকর্ড থাকবে এবং দ্বিতীয় টেবিলটি প্রথম টেবিল থেকে সর্বোচ্চ মান ব্যবহার করবে এবং একটি স্বয়ংক্রিয়_বৃদ্ধি বৈশিষ্ট্যের জন্য ব্যবহার করবে।
একটি টেবিল তৈরি করার প্রশ্নটি নিম্নরূপ -
mysql> সারণি তৈরি করুন FirstTableMaxValue -> ( -> MaxNumber int -> );কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.64 সেকেন্ড)সন্নিবেশ কমান্ড ব্যবহার করে টেবিল থেকে রেকর্ড সন্নিবেশ করান। প্রশ্নটি নিম্নরূপ -
mysql> FirstTableMaxValue মান (100) এ ঢোকান; কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.15 সেকেন্ড) mysql> FirstTableMaxValue মানগুলিতে ঢোকান 2000); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.12 সেকেন্ড) mysql> FirstTableMaxValue মানগুলিতে ঢোকান(90); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.15 সেকেন্ড)mysql> FirstTableMaxValue মানগুলিতে ঢোকান (2500); কোয়েরি OK, 1 সারি 0.17 সেকেন্ড)mysql> FirstTableMaxValue মান (2300); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.12 সেকেন্ড)সিলেক্ট স্টেটমেন্ট ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড প্রদর্শন করুন।
প্রশ্নটি নিম্নরূপ -
mysql> FirstTableMaxValue থেকে *নির্বাচন করুন;আউটপুট
<প্রে>+------------+| সর্বোচ্চ নম্বর |+------------+| 100 || 1000 || 2000 || 90 || 2500 || 2300 |+----------+6 সারি সেটে (0.05 সেকেন্ড)
এখন আপনি একটি দ্বিতীয় টেবিল তৈরি করতে পারেন। একটি দ্বিতীয় টেবিল তৈরি করার জন্য ক্যোয়ারী নিম্নরূপ -
mysql> টেবিল AutoIncrementWithMaxValueFromTable তৈরি করুন -> ( -> ProductId int null auto_increment নয়, -> প্রাথমিক কী(ProductId) -> );কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (1.01 সেকেন্ড)
এখানে আমি একটি বিবৃতি অন্তর্ভুক্ত করতে যাচ্ছি যা প্রথম টেবিল থেকে সর্বাধিক মান পাবে এবং দ্বিতীয় টেবিলের জন্য একটি স্বয়ংক্রিয়_বৃদ্ধি বৈশিষ্ট্যে সর্বাধিক মান সেট করবে। প্রশ্নটি নিম্নরূপ -
mysql> সেট করুন @v=(FirstTableMaxValue থেকে MAX(MaxNumber) নির্বাচন করুন);কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.00 সেকেন্ড)mysql> SET @Value2 =CONCAT('ALTER TABLE AutoIncrementWithMaxValueFromTableAUTO_INC, @OKRE); , 0 সারি প্রভাবিত (0.00 সেকেন্ড)mysql> @value2 থেকে আমার স্টেটমেন্ট প্রস্তুত করুন; কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত হয়েছে (0.29 সেকেন্ড) স্টেটমেন্ট প্রস্তুত mysql> myStatement চালান; কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.38 সেকেন্ড)Drecords:0 Records:0 0
এখন আমরা সর্বাধিক মান যোগ করেছি যা প্রথম টেবিল থেকে দ্বিতীয় টেবিলে 2500। এখন আপনি সারণীতে রেকর্ড সন্নিবেশ করতে পারেন যা 2500, 2501 এবং এর থেকে শুরু হয়৷
দ্বিতীয় সারণীতে রেকর্ড সন্নিবেশ করার জন্য ক্যোয়ারী নিম্নরূপ -
mysql> AutoIncrementWithMaxValueFromTable মান();কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.24 সেকেন্ড)mysql> AutoIncrementWithMaxValueFromTable মানগুলিতে ঢোকান();কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.10 সেকেন্ড)
সিলেক্ট কমান্ড ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড চেক করুন। প্রশ্নটি নিম্নরূপ -
mysql> AutoIncrementWithMaxValueFromTable থেকে *নির্বাচন করুন;