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

MySQL ट्रिगर में DELIMITER // का क्या कार्य है?

DELIMITER // MySQL में स्टेटमेंट डिलीमीटर को सेमीकॉलन (;) से डबल स्लैश (//) में बदल देता है। यह ट्रिगर, स्टोर्ड प्रोसीजर, फंक्शन आदि में एकाधिक स्टेटमेंट लिखने के लिए आवश्यक है।

उदाहरण: सैलरी वैलिडेशन ट्रिगर

टेबल बनाएं:

CREATE TABLE EmployeeTable (
    EmployeeId INT,
    EmployeeName VARCHAR(100),
    EmployeeSalary FLOAT
);

ट्रिगर बनाएं

DELIMITER //
CREATE TRIGGER CheckSalary BEFORE INSERT ON EmployeeTable
FOR EACH ROW
BEGIN
    IF NEW.EmployeeSalary < 1000 THEN
        SET NEW.EmployeeSalary = 10000;
    END IF;
END //
DELIMITER ;

व्याख्या:

  • DELIMITER // - डिलीमीटर बदलें
  • BEFORE INSERT - इंसर्ट से पहले चलेगा
  • NEW.EmployeeSalary - नई पंक्ति का सैलरी मान
  • DELIMITER ; - डिलीमीटर वापस सेमीकॉलन पर सेट करें

परीक्षण

INSERT INTO EmployeeTable VALUES (1, 'Carol', 500);  -- 10000 सेट हो जाएगा
INSERT INTO EmployeeTable VALUES (2, 'Bob', 1000);    -- 1000 ही रहेगा
INSERT INTO EmployeeTable VALUES (3, 'Carol', 2500);  -- 2500 ही रहेगा

परिणाम: 500 को 10000 में बदल दिया गया, बाकी मान अपरिवर्तित रहे।

  1. - MySQL में वॉयड क्वेरी कैसे लागू करें जो कुछ न करे?

    MySQL में वॉयड क्वेरी (कोई परिणाम नहीं) कोई पंक्ति और कोई कॉलम नहीं लौटाने वाली क्वेरी के लिए LIMIT 0 का उपयोग करें। टेबल बनाना और डेटा डालना mysql> CREATE TABLE DemoTable (Name VARCHAR(100)); Query OK, 0 rows affected (0.47 sec) mysql> INSERT INTO DemoTable VALUES(Chris); Query OK, 1 row affe

  1. - MySQL SELECT (COLNAME) में पैरेंथेसिस का क्या अर्थ है?

    MySQL में SELECT (COLNAME) का उपयोग उस कॉलम के लिए एक उपनाम (alias) बनाने के लिए किया जाता है। आइए एक उदाहरण देखते हैं और एक टेबल बनाते हैं: mysql> create table DemoTable865( FirstName varchar(100), LastName varchar(100) ); Query OK, 0 rows affected (0.77 sec) इन्सर्ट कमांड का उपयोग

  1. - MySQL में SELECT @@identity क्या करता है?

    @@identity से वर्तमान सत्र का अंतिम AUTO_INCREMENT मान प्राप्त करना @@identity सिस्टम वेरिएबल वर्तमान कनेक्शन/सत्र में AUTO_INCREMENT कॉलम में डाला गया अंतिम मान लौटाता है। यह LAST_INSERT_ID() के समान है लेकिन सत्र-विशिष्ट है। टेबल और डेटा CREATE TABLE DemoTable( UserId INT NOT NULL AUTO_INCRE