Re: Getting the last inserted id
От | Philippe Lang |
---|---|
Тема | Re: Getting the last inserted id |
Дата | |
Msg-id | 6C0CF58A187DA5479245E0830AF84F42142D8D@poweredge.attiksystem.ch обсуждение исходный текст |
Ответ на | Getting the last inserted id (Mike Fahey <mfahey@enter.net>) |
Список | pgsql-odbc |
Hello, Yes, you are right, @@IDENTITY is Microsoft only. We had a discussion about that one year ago. Search for "@@IDENTITY" inthe past discussions. For inserting values into the database, the best solution I found was to use a stored procedure to do that job, and giveme the id back. It gives you the opportunity to do different initialisations when inserting data into the database aswell. That's useful. The problem comes when we start talking about Access and subforms. That's pretty useful to use subforms in Access. Exceptif you use an "add" button along with your subform, you won't be able to used a stored procedure for insert data intothe "subtable". ADP projects are limited to MS SQL Server. In this case, a weird thing can happen: you add a line through a subform, and Access fetches the wrong id back in the subform.This is all explained in the past discussion I talked about. I guess this is why Microsoft started using their @@IDENTITYvariable. So until the PGSQL Driver supports @@IDENTITY as well - what would be great - requery all the lines inthe subform after each insertion! I hope this helps, Philippe Lang -----Message d'origine----- De : pgsql-odbc-owner@postgresql.org [mailto:pgsql-odbc-owner@postgresql.org]De la part de Mike Fahey Envoyé : vendredi, 12. novembre 2004 18:36 À : Postgres list Objet : [ODBC] Getting the last inserted id So I guess the question still remains, how do you get the last inserted id from a sequence? I'm using access 2003 & postgres odbc 8.0.02 select @@IDENTITY seems to be MS Specific and not work with postgres. calling currval has to be a pass-through query which makes it high complicated if at all possible. How does everyone else do this ? How does any database maintain referential integrity if this doesn't work? ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)
В списке pgsql-odbc по дате отправления: