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

MySQL में टेबल पर CHECK कंस्ट्रेंट कैसे जोड़ें?

MySQL 8.0.16+ CHECK कंस्ट्रेंट का पूर्ण समर्थन करता है। पुराने संस्करण इसे पार्स करते हैं लेकिन लागू नहीं करते।

सिंटैक्स

CREATE TABLE table_name (
    column1 datatype,
    column2 datatype,
    ...
    CHECK (condition)
);

उदाहरण: आयु सीमा कंस्ट्रेंट

mysql> CREATE TABLE addCheckConstraintDemo (
    -> Age INT,
    -> CHECK (Age >= 18)
    -> );
Query OK, 0 rows affected (0.55 sec)

नामित कंस्ट्रेंट (बेहतर प्रबंधन के लिए)

CREATE TABLE employees (
    id INT PRIMARY KEY,
    name VARCHAR(100),
    age INT,
    salary DECIMAL(10,2),
    CONSTRAINT chk_age CHECK (age >= 18),
    CONSTRAINT chk_salary CHECK (salary > 0)
);

मौजूदा टेबल पर कंस्ट्रेंट जोड़ना

ALTER TABLE employees
ADD CONSTRAINT chk_age CHECK (age >= 18);

कंस्ट्रेंट हटाना

ALTER TABLE employees
DROP CHECK chk_age;

कंस्ट्रेंट अक्षम/सक्षम करना (MySQL 8.0.16+)

ALTER TABLE employees
ALTER CHECK chk_age NOT ENFORCED;  -- अक्षम

ALTER TABLE employees
ALTER CHECK chk_age ENFORCED;      -- सक्षम

महत्वपूर्ण नोट

  • MySQL 8.0.16 से पहले: CHECK क्लॉज स्वीकार होता है लेकिन लागू नहीं होता (चेतावनी देता है)।
  • कंस्ट्रेंट में सबक्वेरी, फंक्शन कॉल (NOW(), UUID()), ऑटो-इन्क्रीमेंट कॉलम उपयोग नहीं कर सकते।
  • NULL मान CHECK कंस्ट्रेंट को पास कर जाते हैं (अगर कंडीशन NULL देती है)।

सत्यापन

mysql> INSERT INTO addCheckConstraintDemo VALUES (25);  -- OK
mysql> INSERT INTO addCheckConstraintDemo VALUES (15);  -- Error 3819: Check constraint violated
  1. - MySQL में UNIQUE कंस्ट्रेंट और ON DUPLICATE KEY UPDATE का उपयोग करके डुप्लिकेट कुंजी पर अपडेट करना

    MySQL में ON DUPLICATE KEY UPDATE के साथ अपसर्ट MySQL का ON DUPLICATE KEY UPDATE क्लॉज आपको एक रिकॉर्ड डालने की अनुमति देता है, लेकिन यदि एक अद्वितीय कुंजी संघर्ष होता है, तो मौजूदा रिकॉर्ड को अपडेट करता है। इसके लिए लक्ष्य कॉलम पर UNIQUE कंस्ट्रेंट की आवश्यकता होती है। उदाहरण: नाम पर अद्वितीय कंस्

  1. - MySQL संस्करण कैसे जांचें

    आइए समझते हैं कि उपयोगकर्ता वर्तमान में जो MySQL संस्करण चला रहा है, उसकी जांच कैसे करें: कंसोल पर क्वेरी दर्ज करने से पहले, यह सुनिश्चित करना महत्वपूर्ण है कि उपयोगकर्ता सर्वर से जुड़ा हुआ है। MySQL संस्करण जांचें नीचे दी गई क्वेरी सर्वर के संस्करण संख्या और वर्तमान तारीख देगी। mysql> SELECT

  1. - Python में MySQL का उपयोग करके टेबल में नया कॉलम जोड़ना

    कभी-कभी किसी मौजूदा टेबल में नया कॉलम जोड़ने की आवश्यकता होती है। मान लीजिए हमारे पास Students टेबल है जिसमें Name, Age, Roll No जैसे कॉलम हैं। हम इसमें Address नाम का एक नया कॉलम जोड़ना चाहते हैं। यह ALTER कमांड का उपयोग करके किया जा सकता है। ALTER कमांड का उपयोग डेटाबेस में कॉलम को संशोधित, ड्रॉप