Inoussa OUEDRAOGO wrote:
Have you try SCOPE_IDENTITY() ? Available at least since SQL SERVER 2000.
I have used it with success.
Well, yeah. But it's not perfect. I want generators, as in:
create generator an_atomic_counter;
set an_atomic_counter = 1 /*or something like that*/
....
declare variable next_atomic_value int
begin
next_atomic_value = gen_id(an_atomic_counter, 1);
end
next_atomic_is is alway a unique incremental id, and is *not* tied to a
specific table. It's not so much the ability to generate a unique id,
it's the "use auto inc IDENTITY fields or be damned" attitude that Sql
Server has. The only other option is a GUID. Microsoft's insane "SET
IDENTITY_INSERT ON|OFF" is also dangerous. Have you ever tried to
migrate data between to databases using Sql Server? Nightmare!
from MSDN :
<quote>
Returns the last identity value inserted into an identity column in
the same scope. A scope is a module: a stored procedure, trigger,
function, or batch. Therefore, two statements are in the same scope
if they are in the same stored procedure, function, or batch.
</quote>
Interesting article ( 10 Things You Shouldn't Do with SQL Server ) :
http://www.sqljunkies.ddj.com/Article/92CC4817-604D-4344-8BE0-4490F8ED24B6.scuk
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal