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 में बदल दिया गया, बाकी मान अपरिवर्तित रहे।