Re: cur.execute() syntax error

From: Christophe Pettus <xof(at)thebuild(dot)com>
To: Rich Shepard <rshepard(at)appl-ecosys(dot)com>
Cc: psycopg(at)postgresql(dot)org
Subject: Re: cur.execute() syntax error
Date: 2022-04-04 22:07:41
Message-ID: 5D9AFC04-EF8C-401F-83EB-98976F898326@thebuild.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: psycopg

It looks like the LabelInput constructor includes some code. Did you mean something like:

self.inputs['Contact Type'] = LabelInput(
ContactDataForm, 'contact_type',)
# query to fetch data from contacttypes table
fetch_all = "SELECT * from contacttypes"
cur.execute(fetch_all)
# fetching all rows
rows = cur.fetchall()
input_class=ttk.Combobox([values = rows])
input_var=tk.StringVar()
# get selected value and bind it to a method
cont_type = self.get() # selected value by mouse click
con.close()

> On Apr 4, 2022, at 15:02, Rich Shepard <rshepard(at)appl-ecosys(dot)com> wrote:
>
> This MWE (test_combobox.py) produces a syntax error and I'm not seeing why:
> -----
> import tkinter as tk
> from tkinter import ttk
>
> import psycopg2
>
> class ContactDataForm(tk.Frame):
> # set up postgres
> # the connection
> con = psycopg2.connect(database='bustrac')
> # the cursor
> cur = con.cursor()
>
> def __init__(self, parent, *args, **kwargs):
> super().__init__(parent, *args, **kwargs)
> # A dict to keep track of input widgets
> self.inputs = {}
>
> self.inputs['Contact Type'] = LabelInput(
> ContactDataForm, 'contact_type',
> # query to fetch data from contacttypes table
> fetch_all = "SELECT * from contacttypes"
> cur.execute(fetch_all)
> # fetching all rows
> rows = cur.fetchall()
> input_class=ttk.Combobox([values = rows])
> input_var=tk.StringVar()
> # get selected value and bind it to a method
> cont_type = self.get() # selected value by mouse click
> con.close()
> )
> self.inputs['Contact Type'].grid(row0, column1)
> ContactDataForm.grid(row=0, column=0, sticky='we')
> -----
>
> When run from the shell:
> $ python test_combobox.py
> File "test_combobox.py", line 24
> cur.execute(fetch_all)
> ^
> SyntaxError: invalid syntax
>
> Here python is python3 by default.
>
> What am I not seeing?
>
> Rich
>
>

In response to

Responses

Browse psycopg by date

  From Date Subject
Next Message Rich Shepard 2022-04-04 22:18:07 Re: cur.execute() syntax error [RESOLVED]
Previous Message Rich Shepard 2022-04-04 22:02:40 cur.execute() syntax error