Installieren Sie pymysql 2|0Verwenden von pymysql 2|1Datenabfrageanweisungen verwenden Abfrage eines Datenelements fetchone() vom pymysql-Import * conn = verbinden( Host = '127.0.0.1', Port=3306, Benutzer='root', Passwort='123456', Datenbank='itcast', Zeichensatz = "utf8") # Erstellen Sie einen Cursor c = conn.cursor() # SQL-Anweisung ausführen c.execute("select * from student") # Abfrage einer Datenzeile result = c.fetchone() drucken(Ergebnis) # Cursor schließen c.close() # Schließen Sie die Datenbankverbindung conn.close() """ (1, 'Kleinkind', 18, b'\x01') """ Mehrere Daten abfragen fetchall() vom pymysql-Import * conn = verbinden( Host = '127.0.0.1', Port=3306, Benutzer='root', Passwort='123456', Datenbank='itcast', Zeichensatz = "utf8") # Erstellen Sie einen Cursor c = conn.cursor() # SQL-Anweisung ausführen c.execute("select * from student") # Mehrere Datenzeilen abfragen result = c.fetchall() für Element im Ergebnis: drucken(Artikel) # Cursor schließen c.close() # Schließen Sie die Datenbankverbindung conn.close() """ (1, 'Kleinkind', 18, b'\x01') (2, 'Li Si', 19, b'\x00') (3, 'Kleinkind', 20, b'\x01') """ Ändern Sie die Standardeinstellungen des Cursors, der Rückgabewert ist ein Wörterbuch vom pymysql-Import * conn = verbinden( Host = '127.0.0.1', Port=3306, Benutzer='root', Passwort='123456', Datenbank='itcast', Zeichensatz = "utf8") # Erstellen Sie einen Cursor und stellen Sie die Operation auf den Wörterbuchtyp c = conn.cursor(cursors.DictCursor) ein. # SQL-Anweisung ausführen c.execute("select * from student") # Mehrere Datenzeilen abfragen result = c.fetchall() für Element im Ergebnis: drucken(Artikel) # Cursor schließen c.close() # Schließen Sie die Datenbankverbindung conn.close() """ {'id': 1, 'name': 'Name', 'age': 18, 'sex': b'\x01'} {'id': 2, 'name': 'Li Si', 'alter': 19, 'geschlecht': b'\x00'} {'id': 3, 'name': 'Name', 'age': 20, 'sex': b'\x01'} """ Dasselbe gilt für die Rückgabe eines Datenelements. Geben Sie je nach Bedarf ein Wörterbuch oder ein Tupel zurück. 2|2Datenmanipulationsanweisungen verwenden Die Vorgänge zum Ausführen von Add-, Delete- und Update-Anweisungen sind eigentlich dieselben. Schreiben Sie einfach eines zur Demonstration. vom pymysql-Import * conn = verbinden( Host = '127.0.0.1', Port=3306, Benutzer='root', Passwort='123456', Datenbank='itcast', Zeichensatz = "utf8") # Erstellen Sie einen Cursor c = conn.cursor() # SQL-Anweisung ausführen c.execute("insert into student(name,age,sex) values (%s,%s,%s)",("Individual",28,1)) # Transaktion festschreiben conn.commit() # Cursor schließen c.close() # Schließen Sie die Datenbankverbindung conn.close() Im Gegensatz zu Abfrageanweisungen müssen Transaktionen mit commit() festgeschrieben werden, sonst ist die Operation ungültig. 3|0Datenbankverbindungsklasse schreiben Reguläre Ausgabe MysqlHelper.py von pymysql import connect, Cursor Klasse MysqlHelper: def __init__(selbst, Host="127.0.0.1", Benutzer="root", Passwort="123456", Datenbank="itcast", Zeichensatz = "utf8", Port=3306): selbst.host = Host self.port = Port self.user = Benutzer self.password = Passwort self.database = Datenbank self.charset = Zeichensatz self._conn = Keine self._cursor = Keine def _open(selbst): # print("Verbindung geöffnet") self._conn = verbinden(Host=self.host, port=selbst.port, Benutzer=selbst.Benutzer, Passwort=Selbstpasswort, Datenbank=selbst.Datenbank, Zeichensatz = selbst.Zeichensatz) self._cursor = self._conn.cursor(cursors.DictCursor) def _close(selbst): # print("Verbindung geschlossen") self._cursor.close() self._conn.close() def eins(selbst, sql, params=Keine): Ergebnis: Tupel = Keines versuchen: selbst._öffnen() self._cursor.execute(sql, Parameter) Ergebnis = self._cursor.fetchone() außer Ausnahme als e: drucken(e) Endlich: selbst._schließen() Ergebnis zurückgeben def alles(selbst, sql, params=Keine): Ergebnis: Tupel = Keines versuchen: selbst._öffnen() self._cursor.execute(sql, Parameter) Ergebnis = self._cursor.fetchall() außer Ausnahme als e: drucken(e) Endlich: selbst._schließen() Ergebnis zurückgeben def exe(selbst, sql, params=Keine): versuchen: selbst._öffnen() self._cursor.execute(sql, Parameter) self._conn.commit() außer Ausnahme als e: drucken(e) Endlich: selbst._schließen() Diese Klasse kapselt Fetchone, Fetchall und Execute, sodass das Öffnen und Schließen von Datenbankverbindungen und Cursorn nicht mehr erforderlich ist. vom MysqlHelper-Import * mysqlhelper = MysqlHelper() ret = mysqlhelper.all("Wählen Sie * aus Student aus") für Artikel im Ret: drucken(Artikel) """ {'id': 1, 'name': 'Name', 'age': 18, 'sex': b'\x01'} {'id': 2, 'name': 'Li Si', 'alter': 19, 'geschlecht': b'\x00'} {'id': 3, 'name': 'Name', 'age': 20, 'sex': b'\x01'} {'id': 5, 'name': 'Name', 'age': 28, 'sex': b'\x01'} {'id': 6, 'name': 'Wahaha', 'alter': 28, 'geschlecht': b'\x01'} {'id': 7, 'name': 'Wahaha', 'alter': 28, 'geschlecht': b'\x01'} """ Kontext-Manager-Version von mysql_with.py von pymysql import connect, Cursor Klasse DB: def __init__(selbst, Host = "lokaler Host", Port=3306, db='itcast', Benutzer='root', passwd='123456', Zeichensatz='utf8'): # Verbindung herstellen self.conn = connect( Host = Host, port=Anschluss, db = db, Benutzer=Benutzer, passwd=Passwort, charset=Zeichensatz) # Erstellen Sie einen Cursor und stellen Sie die Operation auf den Wörterbuchtyp self.cur = self.conn.cursor(cursor=cursors.DictCursor) ein. def __enter__(selbst): # Gibt den Cursor zurück return self.cur auf __exit__(selbst, exc_typ, exc_val, exc_tb): # Datenbank committen und self.conn.commit() ausführen # Cursor schließen self.cur.close() # Schließen Sie die Datenbankverbindung self.conn.close() Anwendung: von mysql_with importiere DB mit DB() als db: db.execute("Wähle * aus dem Studenten aus") ret = db.fetchone() drucken(ret) """ {'id': 1, 'name': 'Name', 'age': 18, 'sex': b'\x01'} """ Zusammenfassen Oben ist eine Einführung in die Verwendung von Python zum Herstellen einer Verbindung mit einer MySQL-Datenbank mithilfe des Moduls pymysql. Ich hoffe, es ist für alle hilfreich. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten! Das könnte Sie auch interessieren:
|
<<: So erstellen Sie einen K8S-Cluster und installieren Docker unter Hyper-V
>>: Verschachtelte Anzeigeimplementierung der Vue-Router-Ansicht
Grafisches Tutorial zur Installation und Konfigur...
Herunterladen und installierenUmgebungsvariablen ...
1. Öffnen Sie Port 2375 Bearbeiten Sie docker.ser...
Arial Arial ist eine serifenlose TrueType-Schrifta...
Inhaltsverzeichnis Vorwort 1. Die Bedeutung der K...
MySql Nullfeldbeurteilung und IFNULL-Fehlerverarb...
Inhaltsverzeichnis 1. Hintergrund 2. Voraussetzun...
Dieser Artikel veranschaulicht anhand von Beispie...
Wie installiere ich PHP7 unter Linux? 1. Installi...
1. HILFE AIDE (Advanced Intrusion Detection Envir...
Ursprünglicher abgeleiteter Befehl: bin/sqoop imp...
Dieser Artikel stellt ein Tutorial zur Verwendung...
1. Eine statische Seite bedeutet, dass die Webseit...
CSS-Probleme mit dem Hintergrundverlauf und dem a...
Vorwort Dieser Artikel ist lediglich eine einfach...