Обсуждение: Problems in queries

Поиск
Список
Период
Сортировка

Problems in queries

От
"David Anderson"
Дата:
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...

Re: Problems in queries

От
Adrian Klaver
Дата:
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