Mysql
 sql >> Base de données >  >> RDS >> Mysql

SELECT résultats avec un ordre de colonne incorrect avec PyMySQL

Lors des tests, j'ai trouvé que la réponse sélectionnée (convertir dict en OrderedDict) n'était pas fiable pour préserver l'ordre des colonnes de résultats de requête.

Réponse de @vaultah à une question similaire suggère d'utiliser pymysql.cursors.DictCursorMixin :

...pour créer un curseur qui mémorise l'ordre correct des colonnes :

Ensuite, obtenez vos résultats comme d'habitude :

results = cursor.fetchall()
for row in results:
    print row # properly ordered columns

Je préfère cette approche car elle est stable, nécessite moins de code et gère le classement au niveau approprié (au fur et à mesure que les colonnes sont lues).