Hi I am using zope 2.8.11<br><br>I am using mxodbc da to connect to sql server and I was wondering what is the best way to get the new value of the primary key (an identity field) after inserting. <br><br>It looks like there are 3 slightly different functions I could use:<br>
<br>&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;&quot;<br><p>SCOPE_IDENTITY, IDENT_CURRENT, 
and @@IDENTITY are similar functions because they return values that are
 inserted into identity columns.</p><p>IDENT_CURRENT is not limited by 
scope and session; it is limited to a specified table. IDENT_CURRENT 
returns the value generated for a specific table in any session and any 
scope. For more information, see <a href="http://msdn.microsoft.com/en-us/library/ms175098.aspx">IDENT_CURRENT
 (Transact-SQL)</a>.</p><p>SCOPE_IDENTITY
 and @@IDENTITY return the last identity values that are generated in 
any table in the current session. However, SCOPE_IDENTITY returns values
 inserted only within the current scope; @@IDENTITY is not limited to a 
specific scope.</p><p>&quot;&quot;&quot;&quot;&quot;&quot;     (from <a href="http://msdn.microsoft.com/en-us/library/ms190315.aspx">http://msdn.microsoft.com/en-us/library/ms190315.aspx</a>)<br></p>It seems like scope_identity might be the best one to use, but is it possible that two zope transactions might occur within the one sql server &quot;scope&quot; and &quot;session&quot; and therefore get the wrong identity value depending on timing etc. <br>
<br>Thanks in advance<br><br><br>