Re: MySQL LAST_INSERT_ID() to Postgres

Поиск
Список
Период
Сортировка
От Magnus Hagander
Тема Re: MySQL LAST_INSERT_ID() to Postgres
Дата
Msg-id 48B7A81A.9050506@hagander.net
обсуждение исходный текст
Ответ на Re: MySQL LAST_INSERT_ID() to Postgres  (Alvaro Herrera <alvherre@commandprompt.com>)
Ответы Re: MySQL LAST_INSERT_ID() to Postgres  (Alvaro Herrera <alvherre@commandprompt.com>)
Список pgsql-general
Alvaro Herrera wrote:
> Russ Brown escribió:
>> Masis, Alexander (US SSA) wrote:
>>>    "SELECT CURRVAL(
>>> pg_get_serial_sequence('my_tbl_name','id_col_name'));"
>> Any reason why you can't just do this?
>>
>> CREATE FUNCTION last_insert_id() RETURNS bigint AS $$
>>   SELECT lastval();
>> $$ LANGUAGE SQL VOLATILE;
>
> If your table has a trigger that inserts into another table with its own
> sequence, you're screwed.

I assume you're equally screwed with MySQL LAST_INSERT_ID() in that case
- so it'd be bug compatible.

I know MSSQL had similar issues with the use of @@IDENTITY - which is
why they went down the ugly path of SCOPE_IDENTITY(). Why they didn't
just implement RETURNING, I have no idea...

//Magnus


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

Предыдущее
От: "Laura Del Caño"
Дата:
Сообщение: Re: pg_dump problem
Следующее
От: "Roberts, Jon"
Дата:
Сообщение: Re: temp schemas