>
>Skipped ? Why ? The NewId would simply lock the table and return the next id as the default value, so why the Ids would be skipped ? I just don't understand...
Well, your bit of code using NewId() may be a part of a transaction which actually never finishes, or there's a problem with the TableUpdate() which the user chooses to solve by giving up and trying later - in the meantime, the last id was already incremented and given to another user, so this value of id was actually never used, and it's a hole. But then, creating a flat-no-holes key is rather tricky and hard to perfect. There's always some unpredictable case left.