So importieren Sie txt in MySQL unter Linux

So importieren Sie txt in MySQL unter Linux

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: Benutzerdefinierte Klasse zum Herstellen einer Verbindung mit einer MySQL-Datenbank
  • Datei importtxt.py: TXT-Dateien lesen und einfügen
  • dict.txt-Datei: zu bearbeitende TXT-Datei

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:
  • Python-Methode zum Importieren von TXT-Daten in MySQL
  • So importieren Sie SQL-Dateien in Linux (mithilfe der Befehlszeile zum Übertragen einer MySQL-Datenbank)
  • So implementieren Sie Import- und Exportbefehle für MySQL-Datenbanken unter Linux
  • Import und Export von MySQL-Datenbanken im Linux-System
  • Mehrere Möglichkeiten zum einfachen Importieren und Exportieren von MySQL-Datenbanken auf Linux-VPS/-Servern

<<:  Tiefgreifendes Verständnis der MySQL-Selbstverbindung und Join-Assoziation

>>:  Führen Sie die Schritte zur Verwendung des Elements in vue3.0 aus

Artikel empfehlen

So fügen Sie Wettervorhersagen in Ihre Website ein

Wir hoffen, dass wir durch die Einbindung der Wet...

web.config (IIS) und .htaccess (Apache) Konfiguration

xml <?xml version="1.0" encoding=&qu...

Über die „Berufskrankheit“ der Designer

Ich habe immer das Gefühl, dass Designer die sens...

Unterschied zwischen var und let in JavaScript

Inhaltsverzeichnis 1. Bereiche werden in verschie...

So verwenden Sie Nginx als Proxy-Cache

Der Zweck der Cache-Verwendung besteht darin, den...

Führen Sie die Schritte zur Installation von MySQL 5.5 auf CentOS aus

Inhaltsverzeichnis 1. Vorbereitung vor der Instal...

Womit kann ich dich, meinen Tisch, retten (Haiyu-Blog)

Tabellen spielten einst eine sehr wichtige Rolle ...

MySQL 8.0.15 Installations-Tutorial für Windows 64-Bit

Gehen Sie zunächst zum Herunterladen auf die offi...