Il secondo non funziona, perché stai utilizzando tre segnaposto all'interno della stringa di query e fornisci solo una variabile per l'interpolazione.
updateIndexMySQLQuery = """UPDATE %s
SET numberID=%%s WHERE numberID=%%s;""" % (tableName,)
In questo modo il meccanismo di formattazione delle stringhe non si aspetta che tu fornisca 3 valori, poiché i segni di percentuale vengono "evitati" (vergogna per la prima versione della risposta).