যখন অনন্য বাধা আপনাকে নতুন রেকর্ড সন্নিবেশ করা থেকে বাঁচায় তখন চারটি কার্যকার্যসীমা SQL Server

এখন শেয়ার:

অনন্য বাধার কারণে যদি আপনি কোনও টেবিলে নতুন রেকর্ড সন্নিবেশ করতে ব্যর্থ হন তবে এই নিবন্ধটি পড়তে ভুলবেন না। এটি আপনাকে এই সমস্যার সমাধান করতে সহায়তা করবে।

এই নিবন্ধে, আপনি যখন নতুন রেকর্ড সন্নিবেশ করতে ব্যর্থ হন তখন সমস্যাটি সমাধান করার জন্য আমরা 4 টি পদ্ধতি প্রবর্তন করব কারণ এটি সারণীর অনন্য সীমাবদ্ধতা লঙ্ঘন করে SQL Server.

একটি বাস্তব কেস:

এখন আসল কেসটি দেখি। আমাদের কাছে "পণ্য" নামে একটি ডাটাবেস রয়েছে এবং সেখানে একটি টেবিল রয়েছেDataNumenডাটাবেসে "পণ্য"। টেবিলে দুটি ক্ষেত্র রয়েছে, যেমন, "প্রোডাক্ট আইডি" এবং "প্রোডাক্টনাম", যথাক্রমে "ইনট" এবং "বারচার" এর ডেটা ধরণের। এবং "প্রোডাক্টআইডি" অনন্য প্রতিবন্ধকতা সহ একটি প্রাথমিক কী।

বর্তমানে নীচে যেমন টেবিলে কিছু রেকর্ড রয়েছে:সারণীতে রেকর্ডস "DataNumenপণ্য "

চিত্র 1 সারণীতে রেকর্ডস "DataNumenপণ্য "

ধরে নিই ডাটাবেসের জন্য দুটি ডিবিএ রয়েছে, যেমন, জিম এবং টম। একদিন, জিম নীচের মত টেবিলের প্রথম রেকর্ডটি মুছে ফেলেছে:

DELETE FROM DataNumenProduct
WHERE ProductId=1;

দ্বিতীয় দিন টম টেবিলটিতে একটি নতুন রেকর্ড inোকাল, যার মুছে ফেলা রেকর্ডের সাথে একই প্রাথমিক কী রয়েছে, নীচের মত:

INSERT INTO DataNumenProduct
VALUES(1,'DataNumen OutLook Repair');

সুতরাং আমাদের টেবিলের নিম্নলিখিত রেকর্ড রয়েছে, নীচে

সারণীতে আপডেট হওয়া রেকর্ডসDataNumenপণ্য "

চিত্র 2 সারণীতে আপডেট করা রেকর্ডসDataNumenপণ্য "

এখন যদি জিম মুছে ফেলা রেকর্ডটি আবার টেবিলে ফিরিয়ে আনতে চায় তবে এটি প্রাথমিক কী "প্রোডাক্ট আইডি" এর অনন্য বাধা লঙ্ঘন করবে। এই জাতীয় ক্ষেত্রে, সমস্যাটি সমাধানের জন্য আমরা নীচের যে কোনও কাজের ক্ষেত্র ব্যবহার করতে পারি।

কার্যতালিকা 1: বিরোধ রোধ করতে নতুন রেকর্ডের প্রাথমিক কীটি সংশোধন করুন

একটি নতুন মান inোকানোর জন্য আমরা রেকর্ডের প্রাথমিক কীটি সংশোধন করতে পারি যা সারণীতে উপস্থিত সমস্ত রেকর্ডের থেকে আলাদা। উপরের কেসটিকে উদাহরণ হিসাবে ধরুন, রেকর্ডটি সন্নিবেশ করানোর জন্য, আমরা প্রাথমিক কী মান 1 থেকে 5 এ সংশোধন করতে পারি Then তারপরে আমরা নতুন উত্পন্ন রেকর্ডটি নীচে যেমন টেবিলে ফিরিয়ে আনতে পারি:

INSERT INTO DataNumenProduct VALUES(5, 'DataNumen Access Repair');

নীচে সারণিতে চূড়ান্ত রেকর্ড রয়েছে:সারণীতে চূড়ান্ত রেকর্ডসDataNumen পণ্য "

চিত্র 3 সারণীতে চূড়ান্ত রেকর্ডস "DataNumen পণ্য "

কার্যতালিকা 2: বিরোধ রোধ করতে বিদ্যমান রেকর্ডের প্রাথমিক কীটি সংশোধন করুন

  1. প্রথমত, আমাদের বিদ্যমান রেকর্ডের প্রাথমিক কী মানটি আপডেট করতে হবে যা নীচের মত বিরোধের কারণ হতে পারে:
UPDATE DataNumenProduct
SET ProductId = 6
WHERE ProductId = 1;

নীচে সারণিতে আপডেট করা রেকর্ড রয়েছে:

সারণীতে আপডেট হওয়া রেকর্ডসDataNumen পণ্য "

চিত্র 4 সারণীতে আপডেট করা রেকর্ডসDataNumen পণ্য "

  1. তারপরে আমরা মুছে ফেলা রেকর্ডটি নীচে যেমন টেবিলটিতে ফিরিয়ে আনতে পারি:
INSERT INTO DataNumenProduct
VALUES(1, 'DataNumen Access Repair ');

এখন আসুন নীচের মত চূড়ান্ত সংস্করণটি দেখুন:

সারণীতে চূড়ান্ত রেকর্ডস "DataNumen পণ্য "

চিত্র 5 টেবিলের চূড়ান্ত রেকর্ডস "DataNumen পণ্য "

বিকল্প সমাধান ৩: SQL এর মাধ্যমে সাময়িকভাবে ইউনিক কনস্ট্রেইন্টটি নিষ্ক্রিয় করুন

  1. সমস্যাটি সমাধান করতে, আমরা টেবিল থেকে প্রাইমারি কী কনস্ট্রেইন্ট “pk” সাময়িকভাবে মুছে ফেলতে পারি, যেমনটা নিচে দেখানো হয়েছে:
ALTER TABLE DataNumenProduct
DROP CONSTRAINT pk;
  1. তারপরে আমরা মুছে ফেলা রেকর্ডটি আবার টেবিলে যুক্ত করতে পারি:
INSERT INTO DataNumenProduct
VALUES(1, 'DataNumen Access Repair');

এখন আসুন টেবিলে রেকর্ডগুলি দেখুন:

সারণীতে আপডেট হওয়া রেকর্ডসDataNumen পণ্য "

চিত্র 6 সারণীতে আপডেট করা রেকর্ডসDataNumen পণ্য "

  1. তারপরে যেহেতু দুটি রেকর্ডের একই প্রাথমিক কী মান রয়েছে, তাই সংঘাত রোধ করতে আমাদের নীচের মত একটি পরিবর্তন করতে হবে:
UPDATE DataNumenProduct SET ProductId = 5
WHERE ProductName = 'DataNumen Outlook Repair';
  1. শেষ অবধি, আমরা নীচে হিসাবে, প্রাথমিক কী বাধা "পিকে" টেবিলটিতে আবার যুক্ত করব:
ALTER TABLE DataNumenProduct
ADD CONSTRAINT pk PRIMARY KEY(ProductId);

এখন নীচে যেমন টেবিলে কিছু রেকর্ড রয়েছে:

সারণীতে আপডেট হওয়া সামগ্রী "DataNumen পণ্য "

চিত্র 7 সারণীতে আপডেট হওয়া সামগ্রী "DataNumen পণ্য "

বিকল্প সমাধান ৪: এর মাধ্যমে ইউনিক কনস্ট্রেইন্টটি সাময়িকভাবে নিষ্ক্রিয় করুন SQL Server ম্যানেজমেন্ট স্টুডিও:

  1. প্রথম স্থানে, আমরা নীচে জিইউআইয়ের মাধ্যমে টেবিলের প্রাথমিক কী বাধা "পিকে" মুছি:

জিইআইআই এর মাধ্যমে প্রাথমিক কী বাধা "পিকে" মুছুন

চিত্র 8 জিইউআইয়ের মাধ্যমে প্রাথমিক কী বাধা "পিকে" মুছুন

  1. তারপরে আমরা টেবিলের মধ্যে মুছে ফেলা রেকর্ডটি নীচের মতো sertোকান।
INSERT INTO DataNumenProduct
VALUES(1, 'DataNumen Access Repair');

এখন নীচে যেমন টেবিলে কিছু রেকর্ড রয়েছে:

সারণীতে আপডেট হওয়া সামগ্রী "DataNumen পণ্য "

চিত্র 9 সারণীতে আপডেট হওয়া সামগ্রী "DataNumen পণ্য "

  1. তারপরে আমরা সারণীতে বিদ্যমান রেকর্ডের প্রাথমিক কী মানটি পরিবর্তন করব, নীচে হিসাবে:
UPDATE DataNumenProduct
SET ProductId = 5
WHERE ProductName = 'DataNumen Outlook Repair';
  1. শেষ অবধি, আমরা নীচে জিইউআইয়ের মাধ্যমে টেবিলে প্রাথমিক কী বাধা "পিকে" ফিরিয়ে দেব:GUI এর মাধ্যমে প্রাথমিক কী বাধা "পিকে" যুক্ত করুন

চিত্র 8 GUI এর মাধ্যমে প্রাথমিক কী বাধা "পিকে" যুক্ত করুন

সমাধান SQL Server ডাটাবেস দুর্নীতি

অনন্য বাধা ব্যতীত, SQL Server দুর্নীতি ডিবিএগুলিকে বিরক্ত করার একটি খুব সাধারণ সমস্যা। সাধারণত আমরা ব্যবহার করতে পারি SQL Server দুর্নীতির সমাধানের জন্য অন্তর্নির্মিত আদেশগুলি। তবে, যদি তারা কাজ না করে, তবে আমরা কিছু তৃতীয় পক্ষ অবলম্বন করতে পারি SQL Server তথ্য পুনরুদ্ধার সরঞ্জাম।

লেখকের ভূমিকা:

জিম হু একটি তথ্য পুনরুদ্ধার বিশেষজ্ঞ DataNumen, ইনক। যা তথ্য পুনরুদ্ধারের প্রযুক্তিগুলির সহ বিশ্বের শীর্ষস্থানীয় অ্যাক্সেস মেরামত এবং dbf মেরামত সফ্টওয়্যার পণ্য। আরো তথ্যের জন্য, যান WWW.datanumen.com

এখন শেয়ার:

মন্তব্যসমূহ বন্ধ করা হয়.