Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> MySql

मैं एक MySQL तालिका से एक विशिष्टता बाधा को कैसे हटा सकता हूं?

<घंटा/>

इसके लिए आप DROP INDEX का इस्तेमाल कर सकते हैं। वाक्य रचना इस प्रकार है -

टेबल बदलें yourTablename ड्रॉप इंडेक्स yourUniqueName;

उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका बनाते हैं। तालिका बनाने की क्वेरी इस प्रकार है -

mysql> टेबल बनाएं removeUniquenessConstraint -> (-> Id int, -> Name varchar(100), -> Age int, -> isGreterThan18 bool, -> UNIQUE(Id,isGreterThan18) -> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.69 सेकंड)

अब SHOW CREATE कमांड की मदद से टेबल की डिटेल्स चेक करें। क्वेरी इस प्रकार है -

mysql> क्रिएट टेबल रिमूव यूनिकनेस कॉन्स्ट्रेन्ट दिखाएं;

यहाँ आउटपुट है -

<पूर्व>+----------------------------+---------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ------------------------------------------------+| टेबल | तालिका बनाएँ |+----------------------------+----------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ------------------------------------------------+| हटाने की विशिष्टता बाधा | तालिका बनाएँ `निकालने की बाधा` (`Id` int(11) डिफ़ॉल्ट नल, `नाम` varchar(100) डिफ़ॉल्ट शून्य, `आयु` int(11) डिफ़ॉल्ट शून्य, `isGreterThan18` टिनिंट (1) डिफ़ॉल्ट शून्य, अद्वितीय कुंजी `आईडी ` (`Id`,`isGreterThan18`)) इंजन =InnoDB DEFAULT CHARSET =utf8 |+----------------------------+- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- --------------+1 पंक्ति सेट में (0.00 सेकंड)

MySQL तालिका से एक अद्वितीयता बाधा को दूर करने के लिए निम्नलिखित क्वेरी है -

mysql> तालिका को बदलें अद्वितीयता बाधा ड्रॉप इंडेक्स `Id`; क्वेरी ठीक है, 0 पंक्तियां प्रभावित (0.25 सेकंड) रिकॉर्ड:0 डुप्लिकेट:0 चेतावनियां:0

आइए एक बार फिर से तालिका के सभी विवरणों की जाँच करें। क्वेरी इस प्रकार है -

mysql> क्रिएट टेबल रिमूव यूनिकनेस कॉन्स्ट्रेन्ट दिखाएं;

यहाँ आउटपुट है -

<पूर्व>+----------------------------+---------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----+| टेबल | तालिका बनाएँ |+----------------------------+----------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----+| हटाने की विशिष्टता बाधा | तालिका बनाएं `निकालने की बाधा` (`आईडी` int(11) डिफ़ॉल्ट नल,` नाम` वर्कर (100) डिफ़ॉल्ट शून्य,` आयु` int(11) डिफ़ॉल्ट शून्य,` isGreterThan18` टिनिंट (1) डिफ़ॉल्ट शून्य) इंजन =इनो डीबी डिफ़ॉल्ट वर्णसेट =utf8 |+----------------------------+---------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -----+1 पंक्ति सेट में (0.00 सेकंड)

उपरोक्त नमूना आउटपुट को देखें, इसमें कोई विशिष्टता बाधा नहीं है।


  1. बाएं जॉइन का उपयोग कर एक MySQL तालिका से डुप्लिकेट मानों को कैसे हटाएं?

    आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable(Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.46 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - डेमोटेबल (फर्स्टनाम) वैल्यू (माइक) में डालें; क्वेरी ओके, 1 पंक्ति प्रभावित ( 0.0

  1. MySQL तालिका से अनुक्रमणिका निकालें

    MySQL टेबल से इंडेक्स को हटाने के लिए, सिंटैक्स इस प्रकार है - टेबल बदलें yourTableName ड्रॉप इंडेक्स `yourIndexName`; आइए पहले एक टेबल बनाएं - );क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.78 सेकंड) कॉलम नाम पर इंडेक्स जोड़ने की क्वेरी निम्नलिखित है - DemoTable1469(StudentName) पर स्टूडेंट नेम_इंडेक

  1. MySQL में डेटाबेस से तालिका नाम कैसे प्राप्त करें?

    MySQL में किसी डेटाबेस से तालिका नाम पुनर्प्राप्त करने के लिए, सिंटैक्स इस प्रकार है - अपनेडेटाबेसनाम से टेबल दिखाएं; आइए MySQL में डेटाबेस से तालिका नामों को पुनः प्राप्त करने के लिए उपरोक्त क्वेरी को लागू करें - hb_student_tracker से टेबल दिखाएं; यह निम्नलिखित आउटपुट उत्पन्न करेगा - +----------