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

एकाधिक SQL स्टेटमेंट के साथ डेटाबेस अपडेट करें

अंत में डॉक्स और मदद पर लंबे शोध के बाद। मैं इस मुद्दे को हल करने में सक्षम था।

for . का उपयोग करना cursor.execute . पर लूप करें multi=True . के साथ काम किया। मुझे नहीं पता कि हमें लूप करने की आवश्यकता क्यों है।

for result in cursor.execute(SQL, multi=True):
    pass

लूप के बिना बस cursor.execute(SQL, multi=True) डेटाबेस में कोई बदलाव नहीं किया।

import mysql.connector

cnx = mysql.connector.connect(user='scott', database='test')
cursor = cnx.cursor()

SQL = '''
    update my_table 
    set 
    LAY = 'P6682'
    , BLK = 'P6682'
    , ANI = 'P6682'
    where
    Shot = 'SH01';

    update my_table 
    set 
    LAY = '1863'
    , BLK = '1863'
    , ANI = '1863'
    where
    Shot = 'SH02'
'''

for result in cursor.execute(SQL, multi=True):
    pass

cnx.commit()
cur.close()
cnx.close()
cnx.disconnect()


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. उच्चतम/सबसे छोटे <जो कुछ भी> प्रति समूह के साथ रिकॉर्ड प्राप्त करें

  2. MySQL के लिए इष्टतम varchar आकार क्या हैं?

  3. MySQL में एक टेबल या कॉलम नाम के रूप में आरक्षित शब्द का उपयोग करने के कारण सिंटैक्स त्रुटि

  4. MySQL - पंक्तियों की गिनती और बाईं ओर समस्या शामिल हों

  5. संग्रहीत प्रक्रिया का क्या मतलब है?