Heim > Datenbank > MySQL-Tutorial > Warum erhalte ich einen SQLite-Referenzfehler, wenn ich Pandas und SQLAlchemy zum Schreiben in eine MySQL-Datenbank verwende?

Warum erhalte ich einen SQLite-Referenzfehler, wenn ich Pandas und SQLAlchemy zum Schreiben in eine MySQL-Datenbank verwende?

DDD
Freigeben: 2024-12-08 06:23:16
Original
532 Leute haben es durchsucht

Why Am I Getting an SQLite Reference Error When Using Pandas and SQLAlchemy to Write to a MySQL Database?

Fehler beim Schreiben in eine MySQL-Datenbank mit Pandas und SQLAlchemy

Beim Versuch, einen Pandas-Datenrahmen mit der to_sql-Methode von SQLAlchemy in eine MySQL-Tabelle zu schreiben, Ein häufiger Fehler besteht darin, dass trotz Verwendung von MySQL ein Verweis auf SQLite auftritt. Dieses Problem kann aufgrund der Verwendung des Parameters flavour='mysql' beim Erstellen der SQLAlchemy-Engine auftreten.

Veraltung des Parameters 'flavor'

Der Parameter flavour=' Der Parameter „mysql“ ist zugunsten der Verwendung des Parameters „dialect“ veraltet. Die korrekte Verwendung ist:

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

Korrekte Verwendung von SQLAlchemy Connection

Um eine Verbindung mit MySQL mithilfe von mysqlconnector herzustellen, sollten Sie Folgendes verwenden:

cnx = engine.connect()
Nach dem Login kopieren
Nach dem Login kopieren

Anstelle der veralteten raw_connection().

Beheben des Fehlers

Um den Fehler zu beheben, der auf SQLite verweist, führen Sie die folgenden Schritte aus:

  1. Aktualisieren Sie die Engine-Erstellung, um die richtige zu verwenden Dialekt:

    engine = create_engine('mysql+mysqlconnector://[user]:[pass]@[host]:[port]/[schema]', dialect='mysql', echo=False)
    Nach dem Login kopieren
    Nach dem Login kopieren
  2. Stellen Sie eine Verbindung her mit:

    cnx = engine.connect()
    Nach dem Login kopieren
    Nach dem Login kopieren
  3. Verwenden Sie das cnx-Objekt, um SQL-Operationen auszuführen. So schreiben Sie beispielsweise einen Datenrahmen:

    data.to_sql(name='sample_table2', con=cnx, if_exists='append', index=False)
    Nach dem Login kopieren

Indem Sie diese Schritte befolgen, können Sie mit Pandas und SQLAlchemy erfolgreich in eine MySQL-Datenbank schreiben.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich einen SQLite-Referenzfehler, wenn ich Pandas und SQLAlchemy zum Schreiben in eine MySQL-Datenbank verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage