Сделать можно. И даже сразу сделать поиск и по адресу. Например, так и оставить отдельное поле "Номер карточки", а всю "поисковую информацию" по клиенту выводить в другое общее поле, что бы легче было делать поиск. Таким образом, если кассир откроет "Реестр дисконтных карточек", то он увидит информацию в таком виде (пример):
№ Д/К Реквизиты клиента
==========================================================
123 Иванов Иван Иванович, г. Киев, ул. Главная, 13/1, тел. 097-043-80-82
124 Сидоров Андрей Петрович, г. Одесса, ул. Центральная, 15,2 тел. 097-043-80-15
Таким образом, в поле "Реквизиты клиента" можно искать сразу и Фио, и адрес, и телефон.
Но есть нюанс, который кроется в особенностях "машинной логики".
Например, если вы запишите один и тот же номер телефона в разных вариантах, скажем
097-043-80-82
(097) - 043-80-82
(097) 043-80-82
0970438082
097) - 043-8082
- то вы без проблем поймёте, что это за номер. А вот для программы - это всё РАЗНЫЕ НОМЕРА.
Потому в таких случаях, дабы использовать некий стандарт ввода номера (и избежать свойственных человеку ошибок в написании) вводят шаблон написания номера, либо "цепляют" к программе хитрые (и не всегда точные) алгоритмы расшифровки номеров.
А ещё добавим нюанс, что телефон может быть и стационарным, с своим количеством и порядком цифр. И кто то укажет просто номер, кто то - с использованием междугородного кода (пять цифр), кто то - с использованием внутриобластного кода (три цифры).
В общем, думать надо...