MySQL Connector/Python Release Notes
        
Syntax:
boolean = cursor.with_rows
        This read-only property returns True or
        False to indicate whether the most recently
        executed operation could have produced rows.
      
        The with_rows property is useful when it is
        necessary to determine whether a statement produces a result set
        and you need to fetch rows. The following example retrieves the
        rows returned by the SELECT
        statements, but reports only the affected-rows value for the
        UPDATE statement:
      
import mysql.connector
cnx = mysql.connector.connect(user='scott', database='test')
cursor = cnx.cursor()
operation = 'SELECT 1; UPDATE t1 SET c1 = 2; SELECT 2'
for result in cursor.execute(operation):
  if result.with_rows:
    result.fetchall()
  else:
    print("Number of affected rows: {}".format(result.rowcount))