Не трябва да свързвате променливите, за да изградите заявката, а по-скоро да използвате контейнерите, в противен случай вашият код ще бъде податлив на атаки чрез SQL инжектиране. От друга страна, трябва да конвертирате QPixmap, а не текста, в байтове, като използвате QBuffer като посредник:
con = MySQLdb.connect(host="localhost", user="root", password="", database="somedb")
with con:
cur = con.cursor()
name = self.ui.name_edit.text()
buff = QBuffer()
buff.open(QIODevice.WriteOnly)
pixmap = QPixmap(self.ui.image_label.pixmap())
pixmap.save(buff, "PNG")
binary_img = buff.data().toBase64().data()
cur.execute("INSERT INTO persons(name, photo) VALUES (%s, %s)", (name, binary_img))
con.commit()