⊗pyPmDBSQ 102 of 129 menu

Versturen van verzoeken naar de database in Python

Na het verbinden met de database kun je verzoeken ernaar sturen. Dit wordt gedaan met behulp van de variabele query, waarin de SQL-query wordt geschreven om alle gegevens uit de tabel users weer te geven. Deze variabele moet worden geschreven in het blok met de variabele connection:

try: with connect( host='localhost', user='root', password='', database='test', ) as connection: query = "SELECT * FROM users" except Error as e: print(e)

Vervolgens schrijven we nog een with constructie voor het werken met het MySQLConnection-object, opgeslagen in de variabele connection. Op dit object moeten achtereenvolgens speciale methoden worden toegepast. De eerste daarvan is de methode cursor, die van het MySQLConnection-object een CMySQLCursor-object maakt. Hierop wordt op zijn beurt de methode execute toegepast, die de uitvoering van de SQL-query verzorgt, die aan hem is doorgegeven als parameter:

try: with connect( ... ) as connection: query = "SELECT * FROM users" with connection.cursor() as cursor: cursor.execute(query)

Vervolgens moeten alle gegevens worden opgehaald met behulp van de methode fetchall en worden opgeslagen in de variabele result. En om de verkregen gegevens weer te geven, moeten ze door een for lus worden gehaald:

try: with connect( ... ) as connection: query = "SELECT * FROM users" with connection.cursor() as cursor: cursor.execute(query) result = cursor.fetchall() for row in result: print(row)

De volledige code zal er als volgt uitzien:

try: with connect( host='localhost', user='root', password='', database='test', ) as connection: query = "SELECT * FROM users" with connection.cursor() as cursor: print(cursor) cursor.execute(query) result = cursor.fetchall() for row in result: print(row) except Error as e: print(e)

Na het uitvoeren van de code worden alle records in de console weergegeven als tuples:

(1, 'user1', 23, 400) (2, 'user2', 25, 500) (3, 'user3', 23, 500) (4, 'user4', 30, 900) (5, 'user5', 27, 500) (6, 'user6', 28, 900)

Geef alle gegevens uit de tabel users weer.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren