Гость
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Методы построения поиска по БД / 6 сообщений из 6, страница 1 из 1
23.03.2012, 11:04
    #37719579
Utyf1982
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Методы построения поиска по БД
Подскажите способ реализации поиска по неизвестному заранее количеству реквизитов.
То есть пользователь ищет нужную ему информацию заполняя и уточняя необходимую информацию, соответственно поиск в БД будет идти с разными условиями то по одному то по другому а то и по совокупности столбцов. Я раньше динамически формировал запрос на клиенте и отсылал серверу НО при разных условиях производительность падает.( если принципиально сервер Oracle 11 клиент FoxPro 9)
Вопрос собственно вот в чем каким образом можно реализовать этот механизм(или же интерфейс или вообще подход если мой порочен в корне) ?
...
Рейтинг: 0 / 0
23.03.2012, 19:05
    #37720661
kolobok0
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Методы построения поиска по БД
Utyf1982...будет идти с разными условиями то по одному то по другому а то и по совокупности столбцов. Я раньше динамически формировал запрос на клиенте и отсылал серверу НО при разных условиях производительность падает.( если принципиально сервер Oracle 11 клиент FoxPro 9) ..

ИМХО - копайте в сторону оптимизации запросов. где то там собака порылась. В своё время делали поиск который пользователь сам формировал на клиентской стороне. Правда условия связей таблиц, описание полей, способ выдачи результата(цвет, прижим, енумы всякие, формулы) - всё это бралось из базы. причём там хитро было задействованно две или три всего таблицы. В последствии получалось так - надо подкорректировать(добавить ещё одну связь, таблицу или поле) - без перекомпиляции и новой версии просто тупо слали апдэйт на базу. кол-во запросов (на одну выборку) около 4-5, на любое кол-во записей. при этом информация в бд могла динамически меняться - на клиенте это сразу же отображалось (по таймингу либо по рэфрэшу).

При этом на стороне клиента сиквол запрос - несколько десятков кб. Оракл сильная вещь. чем больше условий, тем быстрее ответ. Ну и избегать дистинктов. При этом естественно сортировку можно было выбирать любую, и не только один столбец. На оракле индексов было мало при этом. Ответ - доли секунд. Наполнение - милионы записей (контекст вэб и допечатной продукции, в том числе и обработка телетайпных каналов).

удачи вам
(круглый)
ЗЫ
давно было дело, более 10 лет назад.
...
Рейтинг: 0 / 0
23.03.2012, 21:46
    #37720845
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Методы построения поиска по БД
Utyf1982или же интерфейс или вообще подход если мой порочен в корне
imho
запрос к БД - это узко.
Запрос к ИС, другой разговор. Т.к. ИС ограничивает предметную область\роль пользователя и его функциональные обязанности.
Найди то, незная что, это уже гугл или яндекс\база знаний.
Т.е. можно сделать как полумеру - "построитель запросов", но основной акцент на превращение этих польз.запросов в апдейт ИС с уже заточенными и оптимизированными запросами.
По принципу Отчётов.
Ведь БД\Хранилище данных, может быть не на таблицах основано. Теоретически :)
Всё от ТЗ и денег зависит.
...
Рейтинг: 0 / 0
26.06.2012, 14:05
    #37854964
devman98
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Методы построения поиска по БД
Petro123,

Если вопрос был про возможный интерфейс подобного "динамического" построителя запросов (а не про его реализацию), то вот хороший пример: http://demo.easyquerybuilder.com/asp-net-ajax/
...
Рейтинг: 0 / 0
03.07.2012, 16:12
    #37864764
AlexandrPlus
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Методы построения поиска по БД
Petro123Найди то, незная что, это уже гугл или яндекс\база знаний.
Т.е. можно сделать как полумеру - "построитель запросов", ...
Ведь БД\Хранилище данных, может быть не на таблицах основано. Теоретически :)
Всё от ТЗ и денег зависит.

А построитель запросов в 1С Предприятие - у юзверя не предполагается знание SQL и то, как реализовано то, что он представляет совсем иначе.
...
Рейтинг: 0 / 0
04.07.2012, 01:24
    #37865280
Сергей Васкецов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Методы построения поиска по БД
Utyf1982Я раньше динамически формировал запрос на клиенте и отсылал серверу НО при разных условиях производительность падает.( если принципиально сервер Oracle 11 клиент FoxPro 9)
Вопрос собственно вот в чем каким образом можно реализовать этот механизм(или же интерфейс или вообще подход если мой порочен в корне) ?
На Sybase ASE делал при формировании запроса параллельное формирование плана выполнения (Abstract Plan) под конкретный вид where clause, всё летало.
...
Рейтинг: 0 / 0
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Методы построения поиска по БД / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]