Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

ट्रिगर सिंटैक्स और यदि और हो तो

आप शायद एक सीमांकक निर्दिष्ट करना भूल गए हैं जैसा कि आप देख सकते हैं मैंने कुछ अन्य परिवर्तन भी किए हैं

delimiter #

create trigger VPLS_nodeB_before_ins_trig before insert on VPLS_nodeB
for each row

BEGIN
DECLARE nb INT default 0;
DECLARE nba INT default 0;

SET NEW.VPLS_ID_NodeB = CONCAT('21100', LPAD(NEW.VPLS_ID_NodeB,4,0));
SET nb = (SELECT COUNT(DISTINCT(VPLS_ID_aggregation)) FROM VPLS_nodeB WHERE id_ORT = NEW.id_ORT);

IF(nb > 5) THEN
    SET nba = nb + 1;
ELSE
    SET nba = nb;
END IF;

SET NEW.VPLS_ID_aggregation = CONCAT('21188', LPAD(NEW.id_ORT,2,0), LPAD(nba,2,0));

END#

delimiter ;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. भेजे गए संदेश पर प्रतिक्रिया समय जांचें - केवल SQL का उपयोग करने के साथ संभव है?

  2. मैसकल में दिनांक समय खोज का अनुकूलन कैसे करें?

  3. केवल एक कॉलम पर अलग - केवल पहली डुप्लिकेट पंक्ति प्रदर्शित करें

  4. उपयोगकर्ता नाम दिए जाने पर एक अनियंत्रित MySql डेटाबेस से स्कोर के आधार पर रैंक प्राप्त करें

  5. सिंगल कमांड में सर्वर से सर्वर पर माइस्क्ल कॉपी डेटाबेस