মাইএসকিউএল টেবিল থেকে স্বতন্ত্র সীমাবদ্ধতা বাদ দেওয়া


উত্তর:


344

একটি অনন্য বাধাও একটি সূচক।

SHOW INDEX FROM tbl_nameসূচকের নাম জানতে প্রথমে ব্যবহার করুন । key_nameসেই ক্যোয়ারির ফলাফলগুলিতে ডাকা কলামে সূচকের নাম সংরক্ষণ করা হয় ।

তারপরে আপনি ড্রপ ইন্ডেক্স ব্যবহার করতে পারেন :

DROP INDEX index_name ON tbl_name

অথবা অল্টার টেবিল সিনট্যাক্স:

ALTER TABLE tbl_name DROP INDEX index_name

1
দুঃখিত স্যার প্রশ্ন উত্থাপন করার আগে আমি এটি চেষ্টা করেছিলাম, তবে তা কার্যকর হচ্ছে না
অঙ্কুর মুখার্জি

@ আঙ্কুর মুখোপাধ্যায়: আমি উল্লেখ করতে ভুলে গেছি: আপনাকে যথাযথভাবে আপনার প্রকৃত সারণির নাম এবং প্রকৃত সূচকের নামতে টিবিএল_নাম এবং সূচক_নাম পরিবর্তন করতে হবে। আপনি মাইএসকিউএল ক্যোয়ারী ব্রাউজারে নামগুলি দেখতে পারেন। আপনি করতে পারেন SHOW CREATE TABLE tbl_name
বায়ার্সকে চিহ্নিত করুন

ত্রুটির বার্তা: "আপনার এসকিউএল সিনট্যাক্সে আপনার একটি ত্রুটি রয়েছে; লাইন 1-তে '(প্লেয়ার_আইডি, বছর, টুর্নামেন্ট)' এর নিকটবর্তী ডান সিনট্যাক্সের জন্য আপনার মাইএসকিউএল সার্ভার সংস্করণের সাথে সম্পর্কিত ম্যানুয়ালটি পরীক্ষা করুন"
অঙ্কুর মুখার্জি

1
@ আঙ্কুর মুখোপাধ্যায়: আমি যেভাবে পরামর্শ দিয়েছি তা হ'ল আমার মতে এটি করার সর্বোত্তম উপায়।
চিহ্নিত করুন বায়ার্স

1
আমি phpMyAdmin ব্যবহার করে কোথাও প্রশ্নটি পড়েছি ... @ সিস্টেমেভিচ প্রদত্ত উত্তরটি গ্রহণযোগ্য হিসাবে চিহ্নিত করা উচিত।
পেরে

123

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

বিকল্প পাঠ


34
এটি লক্ষ করা গুরুত্বপূর্ণ যে সূচিপত্র বিভাগটি ডিফল্টরূপে পতিত হয় এবং 12px ফন্টে একটি ছোট, সূক্ষ্ম লিঙ্ক দ্বারা প্রসারিত হয় যেখানে বিভাগটি স্ক্রিনশটে রয়েছে। তবে আপনাকে ধন্যবাদ, আমি এটি খুঁজে পেয়েছি। আপনার মুখ দোয়া করুন। +1
জ্যাক

11

ইনডেক্স একটি টেবিল একটি অনন্য কী বাধ্যতা স্থাপন করতে সক্ষম PRIMARYএবং UNIQUEইনডেক্স।

কোনও কলামে অনন্য কী বাধা মুছে ফেলার জন্য তবে সূচকটি রাখতে, আপনি সূচিটি টাইপ সহ সরিয়ে এবং পুনরায় তৈরি করতে পারেন INDEX

নোট করুন যে সমস্ত টেবিলের জন্য একটি সূচক চিহ্নিত করা ভাল ধারণা PRIMARY


1
উত্সাহিত হয়েছে কারণ @ থোমাসর্টটার এই বিষয়টি স্পর্শ করেছে যে একটি অনন্য বাধা মুছে ফেলার ফলে ক্যোয়ারি কর্মক্ষমতা খারাপভাবে প্রভাবিত হতে পারে - এবং UNIQUEনিয়মিত সূচকটি প্রতিস্থাপন করে এটিকে প্রশমিত করা যেতে পারে INDEX
অ্যালেক্স

4

Phpmyadmin ব্যবহার করে অনন্য বাধা যুক্ত করতে, সেই টেবিলের কাঠামোতে যান এবং নীচে সন্ধান করুন এবং এটি ক্লিক করুন,

এখানে চিত্র বর্ণনা লিখুন

অনন্য প্রতিবন্ধকতা অপসারণ করতে একইভাবে কাঠামোতে যান এবং সূচিপত্র ট্যাব পর্যন্ত নীচে স্ক্রোল করুন এবং নীচে সন্ধান করুন এবং ড্রপ ক্লিক করুন, এখানে চিত্র বর্ণনা লিখুন

আশা করি এটি কাজ করে।

উপভোগ করুন;)


এই সমাধানটি ঠিক আমি যা খুঁজছিলাম was
আরেহ বেইটজ

2

ডাব্লুএএমএপি ৩.০ এর জন্য: নীচে কাঠামোতে ক্লিক করুন 1 কলাম যুক্ত করুন আপনি দেখতে পাবেন '- সূচকগুলি' ক্লিক করুন-সূচকগুলি এবং আপনি যে সূচকটি চান তা বাদ দিন।


2

আপনি যদি মাইএসকিএল ডাটাবেস টেবিল থেকে অনন্য সীমাবদ্ধতাগুলি সরাতে চান তবে ড্রপ সূচক সহ অল্টার টেবিলটি ব্যবহার করুন।

উদাহরণ:

সারণী অনন্য_সংস্থানগুলি (একত্রীকরণ, ক্রিয়াকলাপ_নাম বর্ণাচরণ (100), এক্টিভিটি_উকনিউ ইউনিক (ক্রিয়াকলাপের নাম), প্রাথমিক কী (একীভূত)) তৈরি করুন;

alter table unique_constraints drop index activty_uqniue;

যেখানে ক্রিয়াকলাপ_নাম কলামের জন্য অ্যাক্টিটি_উকনিউ অনন্য বাধা ।


0

অনন্য কী বাদ দেওয়ার সময় আমরা সূচকটি ব্যবহার করি

ALTER TABLE tbl
DROP INDEX  unique_address;

0

বাক্যবিন্যাস সিনট্যাক্স দিয়ে মুছে ফেলা হতে পারে:

টেবিল পরিবর্তন করুন

মাইএসকিউএল ৮.০.১৯ অনুসারে, অল্টার টেবিল যেকোন ধরণের বিদ্যমান সীমাবদ্ধতাগুলি ফেলে দেওয়ার ও পরিবর্তন করার জন্য আরও সাধারণ (এবং এসকিউএল স্ট্যান্ডার্ড) সিনট্যাক্সের অনুমতি দেয়, যেখানে সীমাবদ্ধতার নামটি সীমাবদ্ধতার নাম থেকে নির্ধারিত হয়: ALTER TABLE tbl_name DROP CONSTRAINT symbol;

উদাহরণ:

CREATE TABLE tab(id INT, CONSTRAINT unq_tab_id UNIQUE(id));

-- checking constraint name if autogenerated
SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE TABLE_NAME = 'tab';

-- dropping constraint
ALTER TABLE tab DROP CONSTRAINT unq_tab_id;

ডিবি <> ফিডাল ডেমো


-3

আমার টেবিলের নামটি ক্রেতাদের যা একটি অনন্য বাধা কলাম এমপআইড এখন আইপটি এমপিড ছাড়তে চলেছে

পদক্ষেপ 1: নির্বাহী sp_helpindex ক্রেতারা, চিত্র ফাইল দেখুন

পদক্ষেপ 2: সূচীর ঠিকানাটি অনুলিপি করুন

এখানে চিত্র বর্ণনা লিখুন

স্টিপি 3: টেবিল ক্রেতাদের পরিবর্তনের সীমাবদ্ধতা [UQ__buyers__1299A860D9793F2E] টেবিল ক্রেতাদের পরিবর্তন কলাম এমপ_আইডি করুন

বিঃদ্রঃ:

ব্লককোট

ক্রেতাদের পরিবর্তে এটি আপনার টেবিলের নামটিতে পরিবর্তন করুন :)

ব্লককোট

সমস্ত কলামের নাম এমপ_আইটি বাধা সহ বাদ দেওয়া হয়!


-5
  1. প্রথমে টেবিলটি মুছুন

  2. এসকিউএল যান

এই কোডটি ব্যবহার করুন:

CREATE  TABLE service( --tablename 
  `serviceid` int(11) NOT NULL,--columns
  `customerid` varchar(20) DEFAULT NULL,--columns
  `dos` varchar(30) NOT NULL,--columns
  `productname` varchar(150) NOT NULL,--columns
  `modelnumber` bigint(12) NOT NULL,--columns
  `serialnumber` bigint(20) NOT NULL,--columns
  `serviceby` varchar(20) DEFAULT NULL--columns
)
--INSERT VALUES
INSERT INTO `service` (`serviceid`, `customerid`, `dos`, `productname`, `modelnumber`, `serialnumber`, `serviceby`) VALUES
(1, '1', '12/10/2018', 'mouse', 1234555, 234234324, '9999'),
(2, '09', '12/10/2018', 'vhbgj', 79746385, 18923984, '9999'),
(3, '23', '12/10/2018', 'mouse', 123455534, 11111123, '9999'),
(4, '23', '12/10/2018', 'mouse', 12345, 84848, '9999'),
(5, '546456', '12/10/2018', 'ughg', 772882, 457283, '9999'),
(6, '23', '12/10/2018', 'keyboard', 7878787878, 22222, '1'),
(7, '23', '12/10/2018', 'java', 11, 98908, '9999'),
(8, '128', '12/10/2018', 'mouse', 9912280626, 111111, '9999'),
(9, '23', '15/10/2018', 'hg', 29829354, 4564564646, '9999'),
(10, '12', '15/10/2018', '2', 5256, 888888, '9999');
--before droping table
ALTER TABLE `service`
  ADD PRIMARY KEY (`serviceid`),
  ADD  unique`modelnumber` (`modelnumber`),
  ADD  unique`serialnumber` (`serialnumber`),
  ADD unique`modelnumber_2` (`modelnumber`);
--after droping table
ALTER TABLE `service`
  ADD PRIMARY KEY (`serviceid`),
  ADD  modelnumber` (`modelnumber`),
  ADD  serialnumber` (`serialnumber`),
  ADD modelnumber_2` (`modelnumber`);
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.