One challenge related to data access is that two or more users might need to access data in a given database simultaneously. For example, one user might be performing a task such as editing a customer record while another user is performing a different task, such as running a report of active customers. It is important to prevent two users from editing a record at the same time and to prevent reports from showing data that is half-complete.
Another data access issue is that users want the ability to access data from anywhere. We live in a mobile environment, where people want to access data on their laptops, cell phones, and PDAs. Many of these devices have limited communication capability, which adds to the challenge.
This chapter looks at the pros and cons of disconnected data access. It also explores how to implement unique row IDs as primary keys, such as Identity columns and Globally Unique Identifier (GUID) columns. These primary key types all have their advantages and problems, so we'll look at each type in detail.