Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.12.2012, 23:15   #1
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию Запоминалка адресов

Доброго времени суток товарищи, прошу помощи в реализации "умной" базы задача состоит в следующем, при занесении адреса клиента запоминать его адрес а если он есть то интуитивно подсказывать.
Ну как подсказывать это код уже, это примерн опреставляю. А вот как реализовать правильно структуру в базе чото терзают сомнения.

Есть таблица
Client: id_cl, fio, tel_mob, tel_home, email,d_rozh, и вот как дальше? мне надо иметь город, улица, дом, квартира.

Мне получается надо реализовать ешё таблицу по городам и подчинёную таблице по городам, таблицу по улицам в которой будут заносится данные по улицам принадлежащим домам, номера домов и квартир? Я правильно понимаю?

Если нет, то поправте пожайлуйста...

P.S> Подключение к базе на FB (Фаирбёрд) обязательно делать через компаненты IB? Или можно через BDE или ADO ?
Dozent вне форума Ответить с цитированием
Старый 19.12.2012, 23:26   #2
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

проще всего загнять этот "адресс" в LookupComboBox и по мере набора текста он будет подставляться автоматом.
если хочешь все (город, улица, дом, квартира) в одном поле - используй конкатенацию, если же это должно будет набираться отдельно - по отдельному LookupComboBox на каждое поле
PS. хотя правельнее будет для этих адресов собрать отдельную таблицу-справочник (или несколько таблич - это уже дело вкуса) (я бы собрал в одной) и на этом основании делать автоматическую выборку через master-detail
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 19.12.2012, 23:35   #3
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

ну отображать да ээто понятно, помогите реализовать правильно структуру базы, я правильно мыслю? мне надо будит делать несколько таблиц для адреса?
Dozent вне форума Ответить с цитированием
Старый 19.12.2012, 23:46   #4
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

да. так проще для понимания )))))
№1 - область (OID, NAME)
№2 - город (CID, OID, NAME)
№3 - улица (STID, CID, NAME)
№4 - дом (HID, STID, NAME)
№5 - квартира (FID, HID, NAME)
каждая следующая таблица будет ссылаться на предыдущую, а в конечную запись будут писаться только "первые" ID каждой из таблиц

второй вариант компактнее но и сложнее для понимания\реализации - создание дерева адресов (ID, NAME, PARENT_ID, R_TYPE)
ID - ключевое
NAME - название
PARENT_ID - ссылка на родителя
R_TYPE - тип адреса (0 = область; 1 = город; 2 = улица; и т.д. )
в таком случае в конечную запись будет писаться только последнее значение, а "раскрутка" адресов будет на его основании
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...

Последний раз редактировалось Yurk@; 19.12.2012 в 23:51.
Yurk@ вне форума Ответить с цитированием
Старый 19.12.2012, 23:52   #5
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

Спасибо) просто не уверен был в своих мыслях) реализовал так

City: id_city, name, id_street
Street:id_street,name,dom,kv
Dozent вне форума Ответить с цитированием
Старый 19.12.2012, 23:53   #6
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

и Ещё маленький вопрсо при создании базы в ФБ можно задать не стандартынй логин и пароль а то ФБ ругается говорит ЛОгин и пароль не верные...
Dozent вне форума Ответить с цитированием
Старый 19.12.2012, 23:54   #7
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

Цитата:
City: id_city, name, id_street
Street:id_street,name,dom,kv
немного не так
City: id_city, name
Street: id_street, id_city, name, dom, kv

ЗЫ. опять же - если у тебя будет на одной улице 1000 домов (а квартир и того больше) - у тебя в таблицу Street имя улицы будет доблироваться эту 1000 раз ... лучше вынеси это в отдельную:
Street: id_street, id_city, name
Adress: id_addr, id_street, dom, kv


стандартные логин\пароль: SYSDBA\masterkey
а уж если их изменили === sorry
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...

Последний раз редактировалось Yurk@; 20.12.2012 в 00:01.
Yurk@ вне форума Ответить с цитированием
Старый 19.12.2012, 23:58   #8
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

не я во ткак раз хочу использовать не стандратынй... ввожу свои логин и пароль при создании базы а он ругается...
Dozent вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Анализ IP-адресов ConstantinPerm Паскаль, Turbo Pascal, PascalABC.NET 2 07.12.2012 14:44
получение ip адресов из сервера Афанасий[vedma] Работа с сетью в Delphi 3 06.05.2012 13:40
хранение e-mail адресов Mortimoro PHP 17 21.04.2012 11:06
Рассылка на несколько адресов motorway Microsoft Office Excel 9 28.01.2012 16:01
перебор ip адресов??? Redeemer_09 Общие вопросы C/C++ 0 25.12.2010 22:06