Maison >base de données >tutoriel mysql >Pourquoi Pandas to_sql affiche-t-il une erreur SQLite lors de l'écriture sur MySQL ?

Pourquoi Pandas to_sql affiche-t-il une erreur SQLite lors de l'écriture sur MySQL ?

DDD
DDDoriginal
2024-11-28 16:16:11405parcourir

Why Does Pandas to_sql Show a SQLite Error When Writing to MySQL?

Écriture dans la base de données MySQL avec Pandas et to_sql de SQLAlchemy

Lors de la tentative d'écriture d'une trame de données Pandas dans une table MySQL à l'aide de la méthode to_sql, les utilisateurs peut rencontrer une erreur suggérant que SQLite est utilisé. Ce comportement est généralement dû à une configuration incorrecte du moteur SQLAlchemy pour MySQL.

Utilisation correcte du moteur SQLAlchemy pour MySQL avec mysql.connector

Pour établir une connexion appropriée à une base de données MySQL utilisant SQLAlchemy et le module mysql.connector, les étapes suivantes sont nécessaire :

  1. Importer les modules nécessaires :

    import pandas as pd
    import mysql.connector
    from sqlalchemy import create_engine
  2. Créer un moteur SQLAlchemy :

    engine = create_engine('mysql+mysqlconnector://[user]:[pass]@[host]:[port]/[schema]', echo=False)

    Remplacer [ user], [pass], [host], [port] et [schema] avec vos informations d'identification MySQL et votre base de données informations.

  3. Utilisez le moteur comme paramètre de connexion pour to_sql :

    data.to_sql(name='sample_table2', con=engine, if_exists='append', index=False)

Dépannage :

Si vous avez déjà essayé cette méthode et rencontré une erreur faisant référence à un objet curseur manquant, assurez-vous que vous utilisez le moteur plutôt que le brut. connection, comme paramètre de connexion. La syntaxe correcte est indiquée ci-dessus.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn