Envoi de requêtes à la base de données en Python

Après la connexion à la base de données, il est possible de lui envoyer des requêtes. Cela se fait à l'aide de la variable query, dans laquelle est écrite la requête SQL pour afficher toutes les données de la table users. Cette variable doit être écrite dans le bloc avec la variable connection :

pythontry:
  with connect(
      host='localhost',
      user='root',
      password='',
      database='test',
  ) as connection:
    query = "SELECT * FROM users"
    
  except Error as e:
  print(e)

Ensuite, nous écrivons une autre construction with pour travailler avec l'objet MySQLConnection, stocké dans la variable connection. À cet objet, il faut appliquer séquentiellement des méthodes spéciales. La première d'entre elles est la méthode cursor, qui crée un objet CMySQLCursor à partir de l'objet MySQLConnection. À celui-ci, à son tour, est appliquée la méthode execute, qui assure l'exécution de la requête SQL, transmise en paramètre :

pythontry:
  with connect(
    ...
  ) as connection:
    query = "SELECT * FROM users"
    with connection.cursor() as cursor:
      cursor.execute(query)

Ensuite, il faut extraire toutes les données à l'aide de la méthode fetchall et les enregistrer dans la variable result. Et pour afficher les données obtenues, il faut les passer dans une boucle for :

pythontry:
  with connect(
    ...
  ) as connection:
    query = "SELECT * FROM users"
    with connection.cursor() as cursor:
      cursor.execute(query)
      result = cursor.fetchall()
      
      for row in result:
        print(row)

Le code complet ressemblera à ceci :

pythontry:
with connect(
    host='localhost',
    user='root',
    password='',
    database='test',
) as connection:
  query = "SELECT * FROM users"
  with connection.cursor() as cursor:
    print(cursor)
    cursor.execute(query)
    result = cursor.fetchall()
    
    for row in result:
      print(row)
      
except Error as e:
print(e)

Après l'exécution du code, toutes les entrées s'afficheront dans la console sous forme de tuples :

python(1, 'user1', 23, 400)
(2, 'user2', 25, 500)
(3, 'user3', 23, 500)
(4, 'user4', 30, 900)
(5, 'user5', 27, 500)
(6, 'user6', 28, 900)
Задание 1

Affichez toutes les données de la table users.