মাইএসকিউএল-এ ডুপ্লিকেট কী আপডেটে ঢোকানো কী করে?

Ma I Esaki U Ela E Dupliketa Ki Apadete Dhokano Ki Kare



একটি MySQL ডাটাবেসের সাথে কাজ করার সময়, একটি টেবিলে একটি নতুন রেকর্ড সন্নিবেশ করার চেষ্টা করার সময় ব্যবহারকারীরা মাঝে মাঝে একটি ডুপ্লিকেট কী লঙ্ঘন ত্রুটির সম্মুখীন হতে পারে। এই ত্রুটিটি ঘটে যখন একই প্রাথমিক কী বা অনন্য কী সহ একটি সারি ইতিমধ্যেই বিদ্যমান থাকে। যাইহোক, এই সমস্যাটি নতুন মানগুলির সাথে বিদ্যমান রেকর্ডগুলি আপডেট করে সমাধান করা যেতে পারে। এই ধরনের ক্ষেত্রে, সক্রিয় করা হচ্ছে ' ডুপ্লিকেট কী আপডেটে ঢোকান ” বৈশিষ্ট্য কার্যকরভাবে এই সমস্যার সমাধান করবে।

এই পোস্টটি প্রদর্শন করবে 'ইনসার্ট অন ডুপ্লিকেট কী আপডেট' এবং এটি কিভাবে MySQL এ কাজ করে।







মাইএসকিউএল-এ ডুপ্লিকেট কী আপডেটে ঢোকানো কী করে?

মাইএসকিউএল-এ, ডুপ্লিকেট কী আপডেটে ঢোকান INSERT স্টেটমেন্টের একটি উন্নত বৈশিষ্ট্য যা একটি একক অপারেশনে দুটি কার্যকারিতাকে একত্রিত করে। উদাহরণস্বরূপ, প্রদত্ত রেকর্ডটি ইতিমধ্যে বিদ্যমান না থাকলে এটি একটি নির্দিষ্ট টেবিলে একটি রেকর্ড সন্নিবেশ করায়। যাইহোক, যদি পছন্দসই রেকর্ডটি ইতিমধ্যেই বিদ্যমান থাকে তবে এটি নতুন মান সহ বিদ্যমান রেকর্ড আপডেট করবে।



INSERT ON DUPLICATE KEY UPDATE বৈশিষ্ট্য সক্রিয় করতে, ব্যবহারকারীদের অবশ্যই নীচের প্রদত্ত সিনট্যাক্স অনুসরণ করতে হবে:



দ্রন [ টেবিল_নাম ] ( [ col_1 ] , [ col_2 ] ,... )
মূল্য ( [ val_1 ] , [ val_2 ] ,... )
ডুপ্লিকেট কী আপডেটে [ col_1 ] = [ val_1 ] , [ col_2 ] = [ val_2 ] , ...;





table_name, col_1, col_2, … এবং val_1, val_2, …, ইত্যাদির জায়গায় টেবিলের নাম, কলামের নাম এবং আপনার পছন্দের মান উল্লেখ করুন।

উদাহরণ: মাইএসকিউএল-এ ডুপ্লিকেট কী আপডেট ফিচারে INSERT কীভাবে ব্যবহার করবেন?



প্রথমে, উপযুক্ত সুযোগ-সুবিধা সহ MySQL ডাটাবেসের সাথে সংযোগ করুন এবং তারপর 'linuxhint_author' টেবিলের ডেটা আনতে নীচের কমান্ডটি চালান:

নির্বাচন করুন * linuxhint_author থেকে;

নির্বাচন কমান্ডটি 'linuxhint_author' টেবিলের সমস্ত রেকর্ড পুনরুদ্ধার করে:

এখন 'লিনক্সহিন্ট_অথর' টেবিলে একটি নির্দিষ্ট রেকর্ড সন্নিবেশ বা আপডেট করতে নিম্নলিখিত এসকিউএল কমান্ডটি চালান, 'অনডুপ্লিকেট কী আপডেট' বৈশিষ্ট্যটি সক্রিয় করা আছে:

linuxhint_author-এ ঢোকান ( আইডি , নাম, বয়স, লেখক র‌্যাঙ্ক, ইমেল )
মূল্য ( 6 , 'অ্যালেক্স জনসন' , 29 , 3 , 'alex@example.com' )
ডুপ্লিকেট কী আপডেটে
নাম = VALUES ( নাম ) ,
বয়স = মূল্য ( বয়স ) ,
authorRank = VALUES ( লেখক র‌্যাঙ্ক ) ,
ইমেল = VALUES ( ইমেইল ) ;

যেহেতু নির্দিষ্ট রেকর্ডটি ইতিমধ্যেই 'linuxhint_author' টেবিলে বিদ্যমান নেই, তাই এটি সফলভাবে নির্বাচিত টেবিলে ঢোকানো হবে:

আসুন একটি ডুপ্লিকেট রেকর্ড সন্নিবেশ করান এবং দেখুন কিভাবে ' ডুপ্লিকেট কী আপডেটে মাইএসকিউএল-এ বৈশিষ্ট্যের কাজ:

linuxhint_author-এ ঢোকান ( আইডি , নাম, বয়স, লেখক র‌্যাঙ্ক, ইমেল )
মূল্য ( 3 , 'মাইকেল জনসন' , 28 , 4 , 'michael@example.com' )
ডুপ্লিকেট কী আপডেটে
নাম = VALUES ( নাম ) ,
বয়স = মূল্য ( বয়স ) ,
authorRank = VALUES ( লেখক র‌্যাঙ্ক ) ,
ইমেল = VALUES ( ইমেইল ) ;

নীচের স্নিপেট থেকে, এটি পরিষ্কারভাবে দেখা যায় যে ইতিমধ্যে বিদ্যমান রেকর্ডটি নতুন মানগুলির সাথে সফলভাবে আপডেট করা হয়েছে:

'ইনসার্ট অন ডুপ্লিকেট কী' বৈশিষ্ট্যটি সম্পূর্ণ রেকর্ডের পরিবর্তে একটি নির্দিষ্ট কলামে প্রয়োগ করা যেতে পারে:

linuxhint_author-এ ঢোকান ( আইডি , লেখক র‌্যাঙ্ক )
মূল্য ( 3 , 2 )
ডুপ্লিকেট কী আপডেট লেখকের র‍্যাঙ্ক = মান ( লেখক র‌্যাঙ্ক ) ;

উপরের কোডে, '3' আইডি সহ একজন লেখকের 'authorRank' একটি নতুন মান '2' এ আপডেট করা হচ্ছে:

MySQL-এ 'ইনসার্ট অন ডুপ্লিকেট কী আপডেট' বৈশিষ্ট্যটি এভাবেই কাজ করে।

উপসংহার

মাইএসকিউএল-এ, ডুপ্লিকেট কী আপডেটে ঢোকান একটি উন্নত বৈশিষ্ট্য যা আমাদেরকে একটি নতুন সারি সন্নিবেশ করার কার্যকারিতা একত্রিত করতে এবং একটি একক অপারেশনে ইতিমধ্যে বিদ্যমান সারি আপডেট/পরিবর্তন করতে দেয়। এই বৈশিষ্ট্যটি ব্যবহারকারীদের একটি নির্দিষ্ট টেবিলে একটি নতুন সারি সন্নিবেশ করার চেষ্টা করার সময় 'ডুপ্লিকেট কী লঙ্ঘন' ত্রুটি এড়াতে সহায়তা করে। এই পোস্টটি ব্যাখ্যা করেছে 'ইনসার্ট অন ডুপ্লিকেট কী আপডেট' এবং এটি কীভাবে MySQL-এ কাজ করে।