Isu Kemas Kini Pangkalan Data dalam Skrip Python Selesai
Dalam pertanyaan baru-baru ini, didapati bahawa skrip Python yang direka untuk mengemas kini pangkalan data MySQL adalah tersilap tidak mengemas kini jadual. Selepas siasatan lanjut, skrip didapati mengandungi kod berikut:
<code class="python">dbb = MySQLdb.connect(host="localhost", user="user", passwd="pass", db="database") try: curb = dbb.cursor() curb.execute ("UPDATE RadioGroups SET CurrentState=1 WHERE RadioID=11") print "Row(s) were updated :" + str(curb.rowcount) curb.close() except MySQLdb.Error, e: print "query failed<br/>" print e </code>
Skrip menghadapi masalah walaupun mengisytiharkan bahawa baris telah dikemas kini. Punca percanggahan ini didapati kerana ketiadaan dbb.commit(). Untuk memastikan kemas kini yang dilakukan menggunakan skrip Python digunakan dengan betul pada pangkalan data MySQL, adalah penting untuk memasukkan dbb.commit() selepas menggunakan curb.execute. Fungsi ini melakukan semua perubahan yang anda 'muatkan' ke dalam pelayan MySQL, menjadikannya kekal dalam pangkalan data.
Dengan melaksanakan perubahan ini, skrip Python akan berjaya mengemas kini jadual MySQL seperti yang dimaksudkan.
Atas ialah kandungan terperinci Mengapa Skrip Python Saya Gagal Mengemas kini Pangkalan Data MySQL Walaupun Ia Menunjukkan Baris Dikemas Kini?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!