3

MySQLdb モジュールを使用してデータベースのレコードを削除しようとしています。https://dev.mysql.com/doc/connector-python/en/connector-python-api-mysqlcursor-execute.htmlで、multi=True実行中に複数のクエリを実行することを見つけましたが、エラーが発生します。誰かが私が欠けているものを知っているのを助けることができますか?

query = "DELETE FROM Service_Machine WHERE Id=(SELECT Id FROM Machines WHERE Id="+id+");" \
        "DELETE FROM Machine_Usage WHERE Id=(SELECT Id FROM Machines WHERE Id="+id+");" \
        "DELETE FROM Machines WHERE Id="+id+");
print(query)
self.cursor.execute(query, multi=True)
4

3 に答える 3

0

代わりに次の方法を使用してください

try:
    cur.execute(query1)
    cur.execute(query2)
    cur.execute(query150)
    con.commit()
except Exception as e:
    con.rollback()
于 2018-06-04T19:04:29.287 に答える