1 / 1 / 3
Регистрация: 02.11.2013
Сообщений: 89
|
||||||
1 | ||||||
Поиск по параметру во всех полях таблицы27.01.2024, 23:51. Показов 1581. Ответов 23
Метки нет (Все метки)
Доброго времени суток!
Не правильно работает запрос. В таблице Table1 имеются поля Pole1, Pole2, Pole3, Pole4 нужно через параметр искать информацию во всех полях таблицы.
Как правильно написать чтобы искал во всех полях таблицы? ЗЫ Название таблицы и полей это просто для примера.
0
|
27.01.2024, 23:51 | |
Ответы с готовыми решениями:
23
Поиск по сайту не ищет по всех полях Поиск в разных полях таблицы (запроса) по одному полю формы Массосо Изменить значение таблицы поиск по одному параметру изменение другого Сделать запрос, показывающий информацию о всех полях для всех таблиц для заданной базы данных |
17534 / 7286 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
|
||||||
28.01.2024, 03:53 | 2 | |||||
А так
0
|
10741 / 5582 / 1409
Регистрация: 05.10.2016
Сообщений: 15,787
|
||||||
28.01.2024, 04:00 | 3 | |||||
Как идея:
А разве не оптимальнее искать сразу по объединённому значению полей?
0
|
598 / 404 / 51
Регистрация: 06.03.2022
Сообщений: 2,129
|
|
28.01.2024, 11:31 | 4 |
А чем,в принципе, отличаются однотипные поля Pole1..PoleN и насколько таблица соответствует нормальным формам (хотя не зная задач решаемых БД о чем либо судить не возможно)
0
|
1 / 1 / 3
Регистрация: 02.11.2013
Сообщений: 89
|
|||||||||||
28.01.2024, 12:27 [ТС] | 5 | ||||||||||
Sorry, описал проблему неполно.
Оригинальная таблица содержит примерно 20 тыс. записей и 12 полей. Поля разнотипные. Текстовые, числовые, дата/время. Запрос вызывается из RadStudio (c++) , там свой метод вызова параметра запроса поэтому строка запроса
Смысл в том что пользователь ищет в таблице какую то информацию вводя ее в текстовое поле (параметр запроса). Соответственно запрос должен срабатывать и выбирать искомое из любого поля таблицы. Вот пример такого запроса
Мне нужно тело самого запроса правильно составить. Человек который писал этот проект уволился. Приходится разбираться в чужом коде. Проект заточен на базу Access поэому написал в эту ветку форума
0
|
17534 / 7286 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
|
|
28.01.2024, 12:54 | 6 |
Вы получили ответы на Ваш начальный вопрос (да/нет). Что положено сделать вежливому человеку. А с вопросами по C++ - создавайте тему в соответствующем разделе и там спрашивайте ... .
0
|
1 / 1 / 3
Регистрация: 02.11.2013
Сообщений: 89
|
|
28.01.2024, 12:59 [ТС] | 7 |
Тема закрыта.
Хотя ответ не получил
0
|
17534 / 7286 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
|
|
28.01.2024, 13:05 | 8 |
Врать не хорошо, оба ответа в Аксеес прекрасно работают (с пустыми полями и т.п.). Идите в игнор ... .
0
|
10741 / 5582 / 1409
Регистрация: 05.10.2016
Сообщений: 15,787
|
||||||||||||||||
28.01.2024, 13:19 | 9 | |||||||||||||||
Сообщение было отмечено SergejFil как решение
Решение
На самом тело вашего запроса есть такой:
... Нет двоеточия перед ссылкой на параметр Параметр вы обрамляете знаком процента: ParamByName("ttt")->VALUE = ("%" + txtFind->Text + "%") , а среде MSA для "любые символы" используется "звёздочка": "* ", и что бы не набивать её (их) каждый раз я бы написал так:
Успехов!
1
|
598 / 404 / 51
Регистрация: 06.03.2022
Сообщений: 2,129
|
|
28.01.2024, 14:02 | 10 |
Ну и как Вы представляете себе поиск в числовом(допустим) поле текста (или наоборот)
0
|
10741 / 5582 / 1409
Регистрация: 05.10.2016
Сообщений: 15,787
|
|
28.01.2024, 14:12 | 11 |
Числовое поле проигноририруется - в текстовом найдёт и наоборот (если в тексте нет заданного числа).
И что тут представлять?
0
|
598 / 404 / 51
Регистрация: 06.03.2022
Сообщений: 2,129
|
|
28.01.2024, 15:19 | 12 |
0
|
10741 / 5582 / 1409
Регистрация: 05.10.2016
Сообщений: 15,787
|
||||||
28.01.2024, 15:34 | 13 | |||||
Поэкспериментируйте у себя:
0
|
1 / 1 / 3
Регистрация: 02.11.2013
Сообщений: 89
|
||||||
28.01.2024, 17:05 [ТС] | 14 | |||||
Спасибо Eugene-LS !
Действительно причина была в символе процента.Заменил звездочками и все заработало. К сожалению на домашнем компе у меня нет Access чтобы можно было протестировать в его среде. Да это теперь и не важно. Жму кнопку СПАСИБО! PS.Двоеточие в параметрическом запросе должно быть. RadStudio при обращении к базе Access определяет что это параметр. Поэтому такая строка в запросе например
Добавлено через 12 минут ltv_1953 - в чем дело? у меня была проблема, я обратился на форум. Пробовал ваш вариант. У меня не работало, так как причина была не в запросе, а в инициалицации параметра запроса.Я об этом не знал. Так как на домашнем компе нет MS Access, то я не мог протестировать в его среде. Компетентные люди помогли. Проблема решена. Так что врете вы, "вежливый вы наш"...
0
|
598 / 404 / 51
Регистрация: 06.03.2022
Сообщений: 2,129
|
|
28.01.2024, 20:46 | 15 |
0
|
10741 / 5582 / 1409
Регистрация: 05.10.2016
Сообщений: 15,787
|
|
28.01.2024, 20:55 | 16 |
SDKU
Ну и ... ??? Добавлено через 2 минуты 01. Ну во первых там нет такого поля - это параметр (наберите "4" или "epor") - увидите всё. 02. Использовал системную таблицу т.к. она есть у всех.
0
|
598 / 404 / 51
Регистрация: 06.03.2022
Сообщений: 2,129
|
|
29.01.2024, 00:08 | 17 |
Если не затруднит поясните:в MSysObjects про TableTest одна запись\строка. Параметр будет запрошен. В выборке должно быть несколько (допустим 5 записей)-какие записи и откуда отбираются?
0
|
10741 / 5582 / 1409
Регистрация: 05.10.2016
Сообщений: 15,787
|
||||||
29.01.2024, 00:22 | 18 | |||||
Не понял вашего вопроса целиком.
Видимо это такой способ уйти от признания "неправоты". Если это не так - Создайте запрос:
0
|
598 / 404 / 51
Регистрация: 06.03.2022
Сообщений: 2,129
|
||||||
29.01.2024, 02:18 | 19 | |||||
Так откуда возьмется набор записей?. Текст запроса:
0
|
10741 / 5582 / 1409
Регистрация: 05.10.2016
Сообщений: 15,787
|
|
29.01.2024, 04:04 | 20 |
у меня тот же запрос (post#19) с параметром:
[ttt] = "4" - показал такое "кино":База для тестов моих бредовых идей - "грязненькая". .... И "кино" получилось чётко согласно заданным условиям отбора.
0
|
29.01.2024, 04:04 | |
29.01.2024, 04:04 | |
Помогаю со студенческими работами здесь
20
Поиск всех таблицы в БД, которые содержат определенную колонку Суммирование по параметру из другой таблицы Кодировка UTF-8 в полях таблицы Заполнение таблицы в полях формы Поиск в вычисляемых полях Изменить значение в столбце во всех полях Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |