Wish lists allow customers to maintain a list of products that they would like to purchase at some point, or that they would like others to purchase for them as a gift.
To effectively maintain wish lists for customers, we need to keep a record of:
- The product the customer desires
- The quantity of the product
- If they are a logged-in customer, their user ID
- If they are not a logged-in customer, some way to identify their wish-list products for the duration of their visit to the site
- The date they added the products to their wish list
- The priority of the product in their wish lists; that is, if they really want the product, or if it is something they wouldn't mind having
Let's translate that into a suitable database ...