Re: lastval()

Поиск
Список
Период
Сортировка
От Abhijit Menon-Sen
Тема Re: lastval()
Дата
Msg-id 20050511025246.GB13619@penne.toroid.org
обсуждение исходный текст
Ответ на Re: lastval()  (Neil Conway <neilc@samurai.com>)
Ответы Re: lastval()
Re: lastval()
Список pgsql-patches
At 2005-05-11 10:55:37 +1000, neilc@samurai.com wrote:
>
> > Here is a small patch that implements a function lastval() [...]
>
> What do people think of this idea? (Tom seems opposed, I'm just
> wondering if there are other opinions out there.)

For what it's worth, I think it's a bad idea.

In the MySQL wire protocol (hi Dennis!), the "last insert id" is sent
along with every "OK" message, and the client can just keep the value
in memory. Users call a function to retrieve that value, rather than
issuing a "SELECT nextval()".

So the server-side lastval() function is not enough for any meaningful
compatibility. The client would also need to be changed to provide the
pgsql_last_insert_id() or a similar function (which could do a "SELECT
lastval()" internally).

In this situation -- where both client changes AND a server round-trip
are required -- what's the point of adding cruft to the server? Might
as well confine changes to the client, and use nextval to implement
the feature.

By the way, what would lastval() do if an insert trigger inserts a row
into a table with another serial column?

-- ams

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

Предыдущее
От: Neil Conway
Дата:
Сообщение: refactor index build
Следующее
От: "John Hansen"
Дата:
Сообщение: Re: lastval()