Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/29: Рейтинг темы: голосов - 29, средняя оценка - 4.83
2 / 2 / 0
Регистрация: 11.11.2020
Сообщений: 232

Поиск в базе данных по нажатию Button. Вывод дополнительных полей

18.09.2022, 17:18. Показов 5954. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую. У меня есть две формы. На первой форме моя таблица БД и кнопка переход на вторую форму. На второй форме у меня поиск по нажатию кнопки в таблице БД с первой формы, и у меня уже есть готовый код поисковика, но когда я начинаю поиск по полю, то у меня совпадает в найденом только конкретно то поле по которому я искал, то есть остальные который нашло - они не совпадают. Подскажите, как это исправить? Надо чтобы все поля совпадали как в привязке в таблице бд.
Ниже прикрепляю код кнопки, саму бд и формы.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void __fastcall TForm2::Button1Click(TObject *Sender)
{
   #define Q Form1->ADOQuery1
   Q->Close();
   Q->SQL->Text = "SELECT Владелец FROM oblik WHERE Владелец=" + QuotedStr(Edit1->Text);
   Q->Open();
   if(Q->IsEmpty()) ListBox1->Items->Add("Не найдено!");
   else
     while(!Q->Eof) {
       ListBox1->Items->Add(Q->FieldByName("Владелец")->AsString + "|" +   
       Form1->ADOTable1->FieldByName("Причина")->AsString + "|" +
       Form1->ADOTable1->FieldByName("Дата")->AsString + "|" +
       Form1->ADOTable1->FieldByName("Адреса")->AsString);
  Q->Next();
}
}
Миниатюры
Поиск в базе данных по нажатию Button. Вывод дополнительных полей   Поиск в базе данных по нажатию Button. Вывод дополнительных полей   Поиск в базе данных по нажатию Button. Вывод дополнительных полей  

0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.09.2022, 17:18
Ответы с готовыми решениями:

Вывод дополнительных полей
Здравствуйте. Как вывести дополнительные поля в h1? В коде шаблона каталога стоит код: <h1...

Вывод из дополнительных полей пользователя
Доброго времени суток. Помогите, пожалуйста, с проблемой вывода значений из дополнительных полей пользователя. К дополнительным полям...

Вывод дополнительных полей через ajax
Сделал вывод через ajax постов. Списком, при клике на категорию появляются элементы этой категории. Но изображение из TV не приходит, а...

3
Модератор
 Аватар для D1973
9923 / 6459 / 2457
Регистрация: 21.01.2014
Сообщений: 27,409
Записей в блоге: 3
18.09.2022, 19:58
Цитата Сообщение от Seruch Посмотреть сообщение
у меня совпадает в найденом только конкретно то поле по которому я искал, то есть остальные который нашло - они не совпадают. Подскажите, как это исправить? Надо чтобы все поля совпадали как в привязке в таблице бд.
Какой-то сумбур из слов и нихрена не понятно.
0
2 / 2 / 0
Регистрация: 11.11.2020
Сообщений: 232
18.09.2022, 21:49  [ТС]
D1973, короче говоря мне надо чтобы когда я делаю поиск, то в листбокс выводилась вся информация по конкретному владельцу (Причина. адрес. Дата). А в моем коде оно выводит не его информацию как можете заметить.

Добавлено через 1 час 41 минуту
УРА у меня наконец-то получилось. Я долго думал и вот сделал. Все выводиться правильно

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
void __fastcall TForm2::Button1Click(TObject *Sender)
{
#define Q Form1->ADOQuery1
 Q->Close();
   Q->SQL->Text = "SELECT Владелец FROM oblik WHERE Владелец=" + QuotedStr(Edit1->Text);
   Q->Open();
   if(Q->IsEmpty()) ListBox1->Items->Add("Не найдено!");
   else {
Form1->ADOTable1->First();
bool find=false;
while(!find)
{
    if(Form1->ADOTable1->FieldByName("Владелец")->AsString == Edit1->Text)
    {
        find = true;
        ListBox1->Items->Add(Form1->ADOTable1->FieldByName("Владелец")->AsString + "|" +
        Form1->ADOTable1->FieldByName("Заява")->AsString + "|" +
        Form1->ADOTable1->FieldByName("Дата")->AsString + "|" +
        Form1->ADOTable1->FieldByName("Причина")->AsString + "|" +
        Form1->ADOTable1->FieldByName("Адреса")->AsString + "|" +
        Form1->ADOTable1->FieldByName("Повреждено")->AsString + "|" +
        Form1->ADOTable1->FieldByName("Статус")->AsString);
 
    }
    Form1->ADOTable1->Next();
}
}
}
0
Модератор
 Аватар для D1973
9923 / 6459 / 2457
Регистрация: 21.01.2014
Сообщений: 27,409
Записей в блоге: 3
19.09.2022, 06:59
Цитата Сообщение от Seruch Посмотреть сообщение
Я долго думал и вот сделал.
Нет слов...
Цитата Сообщение от Seruch Посмотреть сообщение
в листбокс выводилась вся информация
А она не может выводится вся, потому как запросом отбирается только одно поле - "Владелец". Но вместо того, чтобы понять суть работы SQL-команды SELECT Вы начали костылить с ADOTable, с компонентом, место которому на помойке истории... А надо-то было заменить конкретное имя поля на символ подстановки и потом циклом обойти все поля, чтобы сформировать итоговую выходную строку
Цитата Сообщение от Seruch Посмотреть сообщение
у меня уже есть готовый код поисковика
А Вы, я вижу, даже не удосужились попытаться понять тот код, который Вам дали... Ну, дело хозяйское, а мне стало неинтересно...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.09.2022, 06:59
Помогаю со студенческими работами здесь

Поиск по слову в listbox'e без дополнительных полей
Здравствуйте. Есть listbox, в нём нужно сделать поиск по слову без дополнительных полей(последовательным набором букв искомого элемента)....

Вывод дополнительных полей - их обертка стилями (css)
Пробую поля ACF. Надо как-то научить их красиво выводиться на формы темы... Предполагаю - подружить со стилями темы или использовать свои...

Поиск по базе и вывод данных
Есть форма для заказа жд билетов с полями - откуда,куда,выбор даты. Нужно чтобы после заполнения этих полей по кнопке -"Найти"...

Поиск по базе данных и вывод в datagridview
Помогите, пожалуйста! У меня есть datagridview, куда выводится таблица из базы данных MySQL. Как можно сделать так, чтобы можно было...

Вывод данных в DataGridView и поиск по базе данных
Уже наверное 100 раз заезженная тема, однако туплю и нифига не понимаю. Суть: существует база данных MS Access - в ней список книг,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru