Re: DBI driver and transactions

Поиск
Список
Период
Сортировка
От Peter Haworth
Тема Re: DBI driver and transactions
Дата
Msg-id PGM.20030204110024.25949.2969@edison.ioppublishing.com
обсуждение исходный текст
Ответ на Re: DBI driver and transactions  ("Nigel J. Andrews" <nandrews@investsystems.co.uk>)
Список pgsql-general
On Mon, 3 Feb 2003 14:49:39 +0000 (GMT), Nigel J. Andrews wrote:
> I presume that the issue here is that in the 1 or 0 rows returned case
> where 1 row indicates I have a problem then I am not fetching from or
> finishing that statement. Although, in the debugger I've seen the Active
> flag still set after doing a single fetch on a 1 row resultset.

The problem is that the statement doesn't get marked inactive until you have
fetched the row after the last one:

  # There are some rows to fetch here
  $sth1->execute;  # Active
  ...
  $sth1->fetch;    # Last row returned, still active
  $sth1->fetch;    # undef returned, now it's inactive

  # No rows to fetch in this case
  $sth0->execute;  # Active
  $sth0->fetch;    # undef returned, now it's inactive

As you can see, this behaviour is necessary in order that empty result sets
can be recognised. Otherwise you'd be fetching on an inactive handle.

--
    Peter Haworth    pmh@edison.ioppublishing.com
Hi, this is Ken. What's the root password?

В списке pgsql-general по дате отправления:

Предыдущее
От: Richard Huxton
Дата:
Сообщение: Re: UNION problem
Следующее
От: "Damjan Pipan"
Дата:
Сообщение: HELP NEEDED: Recreating DROP columns