>I've tried both methods during 15 years of programming, and found the 'prefix' method is easier to handle. Like the range it allows you to see where the data was first input, but it never has to be updated if one site fills up its quota of ID codes.
Actually, after reading your response I realized I was already doing something like this in my own apps. Multiple locations running their own version of the database that I eventually merge together. I use a "site" location identifier. I guess I just didn't think of this as part of a key, although that's exactly how I use it. Serves me right for working so late.