Membetulkan Ralat dalam Pernyataan Kemas Kini MySQL Python
Apabila mengemas kini data dalam pangkalan data MySQL menggunakan Python, adalah penting untuk memastikan sintaks yang betul untuk KEMASKINI kenyataan. Pertimbangkan pernyataan berikut dengan pembolehubah:
cursor.execute ("UPDATE tblTableName SET Year=%s" % Year ", Month=%s" % Month ", Day=%s" % Day ", Hour=%s" % Hour ", Minute=%s" Minute "WHERE Server=%s " % ServerID)
Pernyataan ini mengandungi beberapa ralat yang boleh membawa kepada kemas kini yang salah. Berikut ialah pendekatan yang betul:
cursor.execute (""" UPDATE tblTableName SET Year=%s, Month=%s, Day=%s, Hour=%s, Minute=%s WHERE Server=%s """, (Year, Month, Day, Hour, Minute, ServerID))
Dalam pernyataan yang disemak ini:
Sebagai alternatif, anda boleh menggunakan manipulasi rentetan asas untuk arahan kemas kini sebagai berikut:
cursor.execute ("UPDATE tblTableName SET Year=%s, Month=%s, Day=%s, Hour=%s, Minute=%s WHERE Server='%s' " % (Year, Month, Day, Hour, Minute, ServerID))
Walau bagaimanapun, kaedah ini tidak digalakkan kerana ia meninggalkan kod terdedah kepada serangan suntikan SQL.
Untuk menghapuskan sebarang isu yang berpotensi dengan konvensyen penggantian rentetan merentas bahagian belakang pangkalan data yang berbeza, adalah dinasihatkan untuk menggunakan pendekatan pertama.
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat dalam Pernyataan Kemas Kini Python MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!