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

कोडइग्निटर- यदि नया हो तो सक्रिय रिकॉर्ड डालें या डुप्लीकेट पर अपडेट करें

मूल रूप से आप जो खोज रहे हैं वह यह हो सकता है INSERT ... ON DUPLICATE KEY UPDATE - बशर्ते कि आप MySQL का उपयोग कर रहे हैं और आपकी आईडी टेबल पर एक अद्वितीय कुंजी है।

आपको क्वेरी को मैन्युअल रूप से बनाना होगा और $this->db->query() . को पास करना होगा डीबी चालक के सहायक कार्यों जैसे किसी भी सक्रिय रिकॉर्ड में निर्मित के बजाय कार्य करें।

उदाहरण:

$sql = 'INSERT INTO menu_sub (id, name, desc, misc)
        VALUES (?, ?, ?, ?)
        ON DUPLICATE KEY UPDATE 
            name=VALUES(name), 
            desc=VALUES(desc), 
            misc=VALUES(misc)';

$query = $this->db->query($sql, array( $id, 
                                       $this->validation->name, 
                                       $this->validation->desc, 
                                       $this->validation->misc
                                      ));


  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. जेपीए मैपिंग:QuerySyntaxException:foobar मैप नहीं किया गया है ...

  3. मैं MySQL में एक पंक्ति जनरेटर कैसे बनाऊं?

  4. MYSQL अगर कथन प्रश्न

  5. कॉलम में डिफ़ॉल्ट मान (अभिव्यक्ति) के साथ MYSQL तालिका निर्माण