Database marketing involves building and maintaining customer databases to contact customers, facilitate transactions, and build customer relationships. It requires a large investment and may not always yield accurate assumptions as customer situations and loyalty can change. Database marketing is less effective when products are one-time purchases, customers do not show loyalty, individual sales are small, information gathering is costly, or there is no direct contact between seller and buyer.