![]() |
|
|
![]()
|
|
| harakiri |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 17.1.2011 Репутация: нет Всего: нет |
Здравствуйте, есть приложение с гридом и четырьмя эдитами. Если эдиты пустые, то в гриде отображается полный список из таблицы. Если ввести в первый эдит условие поиска то в отображаются записи удовлетворяющие условию. Если ввести в два или больше грида, то до должны отображаться записи соответствующие всем условиям. Подскажите, как это реализовать с помощью запроса. Если делаю select * from table where p1 = p and p2 = pp, тогда он ничего не выводит если не заполнено хотя бы одно поле. Если делаю через "or", тогда он выводит запись если хотя б в одном эдите есть правильная запись, а в остальных может быть полная белиберда. Помогите пожалуйста.
|
|||
|
||||
| maniaks1 |
|
||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 16.12.2006 Репутация: нет Всего: нет |
ну по идее как то так:
т.е. в ручную сформировать запрос Это сообщение отредактировал(а) maniaks1 - 8.5.2011, 09:08 |
||||
|
|||||
| superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 3 Всего: 15 |
Мне кажется, что это называется фильтрация, а не поиск.
Пиши через and. Проверяй заполнено ли поле и если там, что то есть, то добавляй это условие в запрос. |
|||
|
||||
| harakiri |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 17.1.2011 Репутация: нет Всего: нет |
Всем спасибо за отзывчивость, но нужно сделать именно SP. Как это реализовать на языке SQL?
|
|||
|
||||
| superVad |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 735 Регистрация: 6.4.2006 Где: Черкассы, Украина Репутация: 3 Всего: 15 |
Что есть SP?
|
|||
|
||||
| harakiri |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 17.1.2011 Репутация: нет Всего: нет |
хранимая процедура
|
|||
|
||||
| Vas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 830 Регистрация: 29.6.2005 Где: Stavropol region Репутация: 23 Всего: 28 |
SQL и ХП слегка разные вещи. Для SQL, как тебе ранее писали, проверяй эдиты на введенные значения и формируй SQL запрос, затем его выполняй и смотри результат. Для ХП передавай параметры из эдитов, также их проверяй на пустоту и формируй SQL запрос для курсора, открывай и возвращай из курсора выбранные записи. -------------------- И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин) |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |