मैं phpMyAdmin का उपयोग करके MySQL टेबल के एक कॉलम पर "अद्वितीय कुंजी बाधा" कैसे छोड़ सकता हूं?
मैं phpMyAdmin का उपयोग करके MySQL टेबल के एक कॉलम पर "अद्वितीय कुंजी बाधा" कैसे छोड़ सकता हूं?
जवाबों:
एक अद्वितीय बाधा भी एक सूचकांक है।
SHOW INDEX FROM tbl_name
सूचकांक का नाम जानने के लिए सबसे पहले उपयोग करें। सूचकांक का नाम key_name
उस क्वेरी के परिणामों में कहे जाने वाले कॉलम में संग्रहीत होता है ।
तब आप DROP INDEX का उपयोग कर सकते हैं :
DROP INDEX index_name ON tbl_name
या परिवर्तन तालिका सिंटैक्स:
ALTER TABLE tbl_name DROP INDEX index_name
SHOW CREATE TABLE tbl_name
।
आप नीचे दी गई तालिका में दिखाए गए अनुसार phpMyAdmin का उपयोग करकेDROP
एक तालिका से एक अद्वितीय बाधा बना सकते हैं। विंगस्पैन फ़ील्ड पर एक अद्वितीय बाधा रखी गई है। बाधा का नाम इस उदाहरण में फ़ील्ड नाम के समान है।
एक मेज पर एक अद्वितीय कुंजी बाधा रखने में सक्षम अनुक्रमित हैं PRIMARY
और UNIQUE
अनुक्रमित।
एक स्तंभ पर अद्वितीय कुंजी बाधा को दूर करने के लिए, लेकिन सूचकांक रखें, आप प्रकार के साथ सूचकांक को हटा सकते हैं और फिर से बना सकते हैं INDEX
।
ध्यान दें कि सभी टेबल के लिए एक इंडेक्स चिन्हित होना एक अच्छा विचार है PRIMARY
।
UNIQUE
नियमित रूप से सूचकांक को प्रतिस्थापित करके कम किया जा सकता है INDEX
।
Phpmyadmin का उपयोग करके UNIQUE बाधा को जोड़ने के लिए, उस तालिका की संरचना पर जाएं और नीचे खोजें और उस पर क्लिक करें,
इसी तरह से बाधा को दूर करने के लिए, उसी तरह, संरचना पर जाएं और अनुक्रमित टैब तक स्क्रॉल करें और नीचे ढूंढें और ड्रॉप डाउन क्लिक करें,
आशा है कि यह काम करेगा।
का आनंद लें ;)
WAMP 3.0 के लिए: नीचे दिए गए संरचना जोड़ें पर क्लिक करें 1 कॉलम आप देखेंगे - 'इंडेक्स' क्लिक -इंडेक्स और आप जो भी इंडेक्स चाहते हैं उसे छोड़ दें।
यदि आप mysql डेटाबेस तालिका से अद्वितीय बाधाओं को हटाना चाहते हैं, तो ड्रॉप इंडेक्स के साथ परिवर्तन तालिका का उपयोग करें।
उदाहरण:
तालिका यूनिक_कॉन्स्ट्रक्ट्स बनाएं (यूनिड इंट, एक्टिविटी_नामचर्चा (100), कंसट्रैक्ट एक्टिविट_यूक्नी यूएनआईक्यूई (एक्टिविटी_नाम), प्राइमरी की (यूनिड);
alter table unique_constraints drop index activty_uqniue;
कहाँ activty_uqniue के लिए अद्वितीय बाधा है ACTIVITY_NAME स्तंभ।
सिंटैक्स के साथ बाधा को हटाया जा सकता है:
MySQL 8.0.19 के अनुसार, ALTER TABLE किसी भी प्रकार के मौजूदा अवरोधों को छोड़ने और बदलने के लिए अधिक सामान्य (और SQL मानक) सिंटैक्स की अनुमति देता है, जहां बाधा नाम बाधा से निर्धारित होता है:
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;
मेरी तालिका का नाम खरीदार है जो एक अद्वितीय बाधा स्तंभ है emp_id अब iam emp_id छोड़ने जा रहा है
चरण 1: sp_helpindex खरीदारों को निष्पादित करें, छवि फ़ाइल देखें
चरण 2: सूचकांक पते की प्रतिलिपि बनाएँ
स्टेप 3: टेबल बायर्स को ड्रॉप करें ड्रॉप की कमी
ध्यान दें:
Blockquote
खरीदारों के बजाय इसे अपनी तालिका के नाम में बदलें :)
Blockquote
सभी कॉलम नाम emp_id बाधाओं के साथ गिरा दिया गया है!
पहले तालिका हटाएं
SQL पर जाएं
इस कोड का उपयोग करें:
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`);