sql >> データベース >  >> RDS >> Mysql

MySQLなぜcursor.execute(sql、multi =True)は機能しないが、2 cursor.execute(sql)は機能するのですか?

    この声明:

    cursor.execute(sql, multi=True)
    

    結果に対してイテレータを作成します。怠惰なようです(つまり、必要な場合にのみSQLステートメントを実行します)。 2番目のステートメントの結果を要求することはないため、最初のステートメントのみを実行します。試してみてください:

    for _ in cursor.execute(sql, multi=True): pass
    

    一般に、個別のexecute()を使用することをお勧めします 呼び出します。




    1. SQLAlchemy-テスト用のSQLiteと開発用のPostgresql-移植方法は?

    2. SQLでLIKEを使用する方法

    3. MyBatis Batch Insert / Update For Oracle

    4. 警告:mysqli_num_rows()は、正確に1つのパラメーターを予期し、2つは指定されています| mysql | mysqli