Syntaxe de fonction
La fonction a une syntaxe comme indiqué:
Trame de données.to_sql (nom, con, schema = non, if_exists = 'fail', index = true, index_label = non, chunkSize = non, dType = non, méthode = aucun)Paramètres de fonction
Discutons des paramètres de fonction et de ce que chacun implique:
En savoir plus sur les méthodes d'insertion SQL.
Valeur de retour de fonction
La fonction renvoie le nombre de lignes affectées par l'opération SQL.
Exemple:
Dans cet exemple, nous insérerons le DataFrame suivant dans une base de données MySQL.
https: // www.dropbox.com / s / kql82sncnu7j3c1 / films.CSV?dl = 0
Étape 1: Commencez par importer les bibliothèques requises et chargez le dataframe.
Importer des pandas en tant que PDUne fois le dataframe chargé, passez à l'étape suivante.
Étape 2: L'étape suivante consiste à créer un schéma de base de données. Ouvrez votre terminal et connectez-vous à votre instance MySQL.
$ mysql -u root -pUne fois connecté, créez un schéma de base de données comme indiqué:
mysql> Créer une base de données pandas_sample;Le code ci-dessus doit créer une base de données appelée 'pandas_sample.'. N'hésitez pas à changer cela pour votre opération souhaitée.
Étape 3: Ensuite, revenons à notre code Python et connectons à la base de données. Nous pouvons commencer par importer sqlalchemy et créer la connexion au moteur.
De Sqlalchemy Import Create_EngineDans l'exemple ci-dessus, nous commençons par importer le module Create_Engine à partir de la bibliothèque Sqlalchemy.
Nous créons ensuite une connexion au moteur MySQL à l'aide de la syntaxe ci-dessous:
Create_Engine ("MySQL + PyMySQL: // User: Pass @ Host: Port / DbnameRemarque: Si vous n'avez pas installé la bibliothèque PymySQL, le code ci-dessus renvoie une erreur.
Vous pouvez résoudre ce problème en installant la bibliothèque comme indiqué:
PIP3 Installer PymsqlÉtape 4: Une fois que nous avons tout en cours d'exécution, nous pouvons enregistrer le Nourned DataFrame dans la base de données à l'aide de la fonction TO_SQL () comme indiqué:
df.to_sql ('films', con = moteur)Le code ci-dessus doit créer un nouveau tableau appelé «films» et insérer les valeurs de dataframe.
Pour afficher tous les enregistrements dans la base de données, nous pouvons s'exécuter:
mysql> Utilisez pandas_sample;Cela devrait renvoyer les enregistrements de la dataframe comme indiqué:
Vous pouvez également utiliser Python pour obtenir les enregistrements de la base de données comme indiqué:
moteur.exécuter ('sélectionner * dans les films').fetchall ()Les valeurs résultantes sont telles que montrées:
Conclusion
Cet article explore comment utiliser la fonction pandas to_sql () pour enregistrer un dataframe dans une base de données MySQL.