Thread: Problems in queries
Hi all
I have this function:
def checkNameDob(self, name, dob):
cur = self.conn.cursor();
sql = "SELECT * from patient WHERE fn_pat = %s"
cur.execute(sql,(name))
rows = cur.fetchall()
It seems to work fine, But I'm getting this exception:
psycopg2.ProgrammingError: current transaction is aborted, commands ignored until end of transaction block
at: cur.execute(sql)
What's the problem?
thx
ps: fn_pat is the column of the db, name is the string passed in the function parameter.
if I type:
"SELECT * from patient WHERE fn_pat = 'david' "
in the psql on console it works well...
I have this function:
def checkNameDob(self, name, dob):
cur = self.conn.cursor();
sql = "SELECT * from patient WHERE fn_pat = %s"
cur.execute(sql,(name))
rows = cur.fetchall()
It seems to work fine, But I'm getting this exception:
psycopg2.ProgrammingError: current transaction is aborted, commands ignored until end of transaction block
at: cur.execute(sql)
What's the problem?
thx
ps: fn_pat is the column of the db, name is the string passed in the function parameter.
if I type:
"SELECT * from patient WHERE fn_pat = 'david' "
in the psql on console it works well...
On Saturday 03 May 2008 4:05 pm, David Anderson wrote: > Hi all > I have this function: > def checkNameDob(self, name, dob): > cur = self.conn.cursor(); > > sql = "SELECT * from patient WHERE fn_pat = %s" > cur.execute(sql,(name)) > rows = cur.fetchall() > > It seems to work fine, But I'm getting this exception: > psycopg2.ProgrammingError: current transaction is aborted, commands ignored > until end of transaction block > at: cur.execute(sql) If I remember right cur.execute(sql,(name)) should be cur.execute(sql,(name,)) note the comma after name. > > What's the problem? > thx > > ps: fn_pat is the column of the db, name is the string passed in the > function parameter. > if I type: > "SELECT * from patient WHERE fn_pat = 'david' " > in the psql on console it works well... -- Adrian Klaver aklaver@comcast.net