Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
An email recently crossed my inbox (if electrons are capable of crossing a virtual construct like an email folder.. an existential conversation for a different day) which discussed a previously unknown change in the behavior of the IDENT_CURRENT() function between SQL Server 2000 and SQL Server 2005.
In SQL Server 2000, IDENT_CURRENT() always returns a value when executed against a non-empty table with an identity column.
In SQL Server 2005, the IDENT_CURRENT() function will return a NULL value unless the user has one of the following permissions to the underlying table: ALTER, CONTROL, DELETE, INSERT, REFERENCES, SELECT, TAKE OWNERSHIP, UPDATE, VIEW DEFINITION.
This change is consistent with and a fallout of the new security model in SQL Server 2005, whereby the server "denies the existence" of objects to which the user lacks permissions.
-wp