CommencezCommencez gratuitement

Se connecter à une base de données MySQL

Avant de passer aux exercices de calcul, commençons par nous connecter à notre base de données. Rappelez-vous que, dans le dernier chapitre, vous vous êtes connecté à une base de données PostgreSQL. Maintenant, vous allez vous connecter à une base de données MySQL, pour laquelle plusieurs préfèrent utiliser le pilote de base de données pymysql qui, comme psycopg2 pour PostgreSQL, doit être installé avant utilisation.

Cette chaîne de connexion commence par 'mysql+pymysql://', ce qui indique le dialecte et le pilote utilisés pour établir la connexion. Le bloc du dialecte est suivi de la combinaison 'username:password'. Ensuite, vous indiquez l'hôte et le port avec '@host:port/'. Enfin, vous terminez la chaîne de connexion avec le 'database_name'.

Vous allez maintenant vous exercer à vous connecter à une base MySQL : ce sera la même base census avec laquelle vous avez déjà travaillé. L'un des grands avantages de SQLAlchemy, c'est qu'une fois la connexion établie, il fait abstraction du type de base de données, et vous pouvez écrire le même code SQLAlchemy, peu importe!

Cette activité fait partie du cours

Introduction aux bases de données en Python

Voir le cours

Instructions de l’exercice

  • Importez la fonction create_engine de la bibliothèque sqlalchemy.
  • Créez un moteur vers la base census en concaténant les chaînes suivantes et en les transmettant à create_engine() :
    • 'mysql+pymysql://' (le dialecte et le pilote).
    • 'student:datacamp' (le nom d'utilisateur et le mot de passe).
    • '@courses.csrrinzqubik.us-east-1.rds.amazonaws.com:3306/' (l'hôte et le port).
    • 'census' (le nom de la base de données).
  • Utilisez la méthode .table_names() sur engine pour afficher les noms des tables.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Import create_engine function
from sqlalchemy import create_engine

# Create an engine to the census database
engine = create_engine(____)

# Print the table names
print(____)
Modifier et exécuter le code