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

एक प्रक्रिया बनाते समय त्रुटि mysql CRUD

  • आपको Delimiter को फिर से परिभाषित करने की आवश्यकता है किसी और चीज़ के लिए, उदाहरण के लिए:$$ . यह पार्सर को ; . को अनदेखा करने की अनुमति देता है (इसलिए ; . तक पहुंचने पर स्टेटमेंट निष्पादित न करें )।
  • साथ ही, एक अच्छे अभ्यास के रूप में, हमेशा DROP PROCEDURE IF EXISTS , यदि समान नाम वाली प्रक्रिया पहले से मौजूद है तो विफल होने से बचने के लिए।
  • अंत में, सीमांकक को वापस ; . पर फिर से परिभाषित करें

निम्न का प्रयास करें:

DELIMITER $$

DROP PROCEDURE IF EXISTS `ItemsAddOrEdit` $$

CREATE PROCEDURE `ItemsAddOrEdit`(
_itm_id INT,
_itm_name VARCHAR(255),
_itm_price FLOAT(8,2)
)
BEGIN
    IF _itm_id = 0 THEN
    INSERT INTO items (itm_name, itm_price)
    VALUES (_itm_name, _itm_price);
ELSE
    UPDATE items
    SET
        itm_name = _itm_name,
        itm_price = _itm_price
    WHERE itm_id = _itm_id;
END IF;
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. PHP कुछ परिस्थितियों में mysql कंटेनर नाम को हल नहीं कर सकता

  2. SQL सर्वर 2005 से MySQL में डेटा कैसे निर्यात करें

  3. लोकलहोस्ट (xampp) में MySQL सख्त मोड को कैसे चालू/बंद करें?

  4. MySQL महीने, साल में तारीखों की सूची प्राप्त करें

  5. प्रति माह रिकॉर्ड प्राप्त करें लेकिन शून्य भी प्राप्त करें यदि उस महीने कोई रिकॉर्ड नहीं है