Vorwort Als ich gestern ein kleines Projekt schrieb, stieß ich auf eine Anforderung: die Daten eines TXT-Dokuments in eine MySQL-Datenbank importieren. Zuerst wollte ich Mysql Workbench verwenden, um die TXT-Datei direkt zu importieren, aber am Ende stellte ich fest, dass es den TXT-Import nicht unterstützte. Daher konvertierte ich die TXT-Datei in Excel und als ich sie unter Linux importierte, stieß ich auf verschiedene Probleme mit verstümmeltem Code. Getreu dem Grundsatz, dass es nichts gibt, was ein Programmierer nicht kann, habe ich einen Python-Code geschrieben, um die Datei direkt für den Import zu bearbeiten. Das Ergebnis ist eine Datei mit über 10.000 Datensätzen und die Importzeit beträgt etwa zwei Minuten. Hier ist der spezifische Code:
mysqlpython.py-Datei vom pymysql-Import * Klasse Mysqlpython: def __init__(selbst,Datenbank,Host="localhost", Benutzer="root",Passwort="123456", Zeichensatz="utf8",Port=3306): self.database = Datenbank selbst.host = Host self.user = Benutzer self.password = Passwort self.charset = Zeichensatz self.port = Port # Datenverbindung und Cursorobjekt erstellen def open(self): self.db = verbinden(Host=self.host, Benutzer=selbst.Benutzer, Passwort=Selbstpasswort, port=selbst.port, Datenbank=selbst.Datenbank, Zeichensatz = selbst.Zeichensatz) self.cur = self.db.cursor() # Schließen Sie das Cursorobjekt und das Datenbankverbindungsobjekt def close(self): selbst.cur.schließen() self.db.schließen() # SQL-Befehl ausführen def zhixing(self,sql,L=[]): selbst.öffnen() selbst.cur.execute(sql,L) selbst.db.commit() selbst.schließen() # Abfragefunktion def all(self,sql,L=[]): selbst.öffnen() selbst.cur.execute(sql,L) Ergebnis = self.cur.fetchall() Ergebnis zurückgeben wenn __name__ == "__main__": sqlh = Mysqlpython("Wörterbuch") sel = "* vom Benutzer auswählen" r = sqlh.alles(sel) drucken(r) Datei importtxt.py erneut importieren System importieren von mysqlpython importiere Mysqlpython sqlh = Mysqlpython("Wörterbuch") def einfügen(Daten): arr = daten.split() Name = arr[0] Beschreibung = " ".join(arr[1:]) ins = "in Wörter (Name, Beschreibung) Werte (%s, %s) einfügen" sqlh.zhixing(ins,[Name,Beschreibung]) def get_addr(): f = öffnen('./dict.txt') Zeilen = f.readlines() für Zeile in Zeilen: einfügen(Zeile) f.schließen() zurückkehren '' wenn __name__ == '__main__': drucken(get_addr()) dict.py-Datei (ich habe mehrere Dateien kopiert) eine unbestimmte Kunst Abakus n. Rahmen mit Perlen, die entlang paralleler Stäbe gleiten, wird verwendet, um Kindern das Zahlenspiel beizubringen und (in manchen Ländern) zum Zählen aufgeben v. von (einer Person, Sache oder einem Ort) weggehen, ohne die Absicht zurückzukehren; im Stich lassen; verlassen Abbruch n. Abbruch erniedrigen v. sich/jdn in der Würde herabsetzen; sich/jdn erniedrigen; beschämen, die Selbstbeherrschung oder das Selbstvertrauen zerstören: aus der Fassung bringen beschämt Adj. ~ verlegen; beschämt abate v. weniger machen oder werden Abattoir n. = Schlachthof (Schlachtung) Ändern Sie einfach den regulären Ausdruck, damit er mit anderen Trennzeichen übereinstimmt. Alle Codes werden hier eingefügt. Sie können die Datenbankkonfiguration einfach kopieren, ändern und ausführen. Zusammenfassen: Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: Tiefgreifendes Verständnis der MySQL-Selbstverbindung und Join-Assoziation
>>: Führen Sie die Schritte zur Verwendung des Elements in vue3.0 aus
In diesem Artikel finden Sie das grafische Tutori...
Wir hoffen, dass wir durch die Einbindung der Wet...
Einführung <br />Nicht jeder hat Zugang zu e...
xml <?xml version="1.0" encoding=&qu...
Die Zeit der virtuellen VM Ware-Maschine CentOS s...
Ich habe immer das Gefühl, dass Designer die sens...
Inhaltsverzeichnis 1. Bereiche werden in verschie...
Der Zweck der Cache-Verwendung besteht darin, den...
Inhaltsverzeichnis Vorwort 1. MySQL Master-Slave-...
Inhaltsverzeichnis 1. Vorbereitung vor der Instal...
Ubuntu16.04: Pip installieren und deinstallieren ...
1. Tcl-Skriptdatei circle.tcl Codekommentare #Leg...
Zuerst müssen wir das Attribut „transform-origin“...
Tabellen spielten einst eine sehr wichtige Rolle ...
Gehen Sie zunächst zum Herunterladen auf die offi...