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

SQL - यदि मौजूद है तो अद्यतन करें अन्यथा सम्मिलित करें

  1. एक UNIQUE बनाएं बाधा आपके subs_email . पर कॉलम, यदि कोई पहले से मौजूद नहीं है:

    ALTER TABLE subs ADD UNIQUE (subs_email)
    
  2. INSERT ... DUPLICATE KEY UPDATE :

    INSERT INTO subs
      (subs_name, subs_email, subs_birthday)
    VALUES
      (?, ?, ?)
    ON DUPLICATE KEY UPDATE
      subs_name     = VALUES(subs_name),
      subs_birthday = VALUES(subs_birthday)
    
<ब्लॉकक्वॉट>

आप INSERT के INSERT भाग से कॉलम मानों को संदर्भित करने के लिए UPDATE क्लॉज में VALUES(col_name) फ़ंक्शन का उपयोग कर सकते हैं ... ONDUPLICATE KEY UPDATE - dev.mysql.com

  1. ध्यान दें कि मैंने स्ट्रिंग अक्षर के स्थान पर पैरामीटर प्लेसहोल्डर का उपयोग किया है, जैसा कि एक वास्तव में है SQL इंजेक्शन हमलों से बचाव के लिए पैरामीटरयुक्त कथनों का उपयोग करना चाहिए ।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:जुड़ने के प्रकारों का त्वरित विश्लेषण

  2. MySQL - पायथन का उपयोग करके विभिन्न सर्वरों पर डेटाबेस के बीच जुड़ता है?

  3. MySQL को लिखते समय टेक्स्ट एरिया से लाइन ब्रेक सुरक्षित रखें

  4. फिक्स:MySQL - उपयोगकर्ता को अस्वीकृत कमांड का चयन करें

  5. व्याख्या द्वारा पंक्तियाँ क्यों गिनती () के बराबर नहीं हैं?