I'm converting an old invoicing application where primary keys are defined by the user when adding new records. For example, key "PACBELL" might be used to add new vendor "Pacific Bell", etc. For most accounting-type application, this approach seems to be the norm for fast data entry.
In my new development I use integer-based surrogate keys but I'm thinking I might have problems with existing users who are accustomed to entering memorized vendor keys in data entry which is easier than either entering in the unfamiliar new surrogate key value or using the separate lookup form.
I could keep the existing key as candidate key and use it for data entry but it's slightly more work and I feel it's really unnecessary to keep both.
Any suggestions?
It's "my" world. You're just living in it.