im using Postgres together with python(psycopg2). Im trying to insert data in a QLabel. It shows the data, but the data comes with clinges. How do I get rid of the clinges?
My code:
def getstunden(): conn = None try: conn = psycopg2.connect("dbname=test user=postgres password=test") cur = conn.cursor() cur.execute("SELECT stunden FROM ueberstunden WHERE name = 'test'") row = cur.fetchone() while row is not None: self.s_test.setText(str(row)) row = cur.fetchone() cur.close() except (Exception, psycopg2.DatabaseError) as error: print(error) finally: if conn is not None: conn.close()
This is what I get out of it:
Advertisement
Answer
Per here Cursor:
Note
cursor objects are iterable, so, instead of calling explicitly fetchone() in a loop, the object itself can be used:
cur.execute(“SELECT * FROM test;”) for record in cur: print record
(1, 100, “abc’def”)
(2, None, ‘dada’)
(3, 42, ‘bar’)
So to simplify:
def getstunden(): conn = None try: conn = psycopg2.connect("dbname=test user=postgres password=test") cur = conn.cursor() cur.execute("SELECT stunden FROM ueberstunden WHERE name = 'test'") for row in cur: self.s_test.setText(str(row[0])) cur.close() except (Exception, psycopg2.DatabaseError) as error: print(error) finally: if conn is not None: conn.close()