Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
2 / 2 / 0
Регистрация: 07.08.2015
Сообщений: 428

Delphi запрос count() в DBGrid

20.04.2023, 06:30. Показов 1627. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Мир всем и доброе утро
скажите пожалуйста почему в Гриде не показывается столбец запроса Count(), но с помощью sql Editor-a показывает ?:
запрос через Делфи:
Delphi
1
2
3
4
5
6
7
8
9
if combo3.ItemIndex=0 then
Dm.fdjustuju.IndexFieldNames:='';
dm.fdhisobot.SQL.Clear;
Dm.fdhisobot.SQL.Add('select nom,faculta,count(nommakol) As summa FROM muallim');
Dm.fdhisobot.SQL.Add('left JOIN public."Makol" ON muallim.user_id= public."Makol".graf');
Dm.fdhisobot.SQL.Add('GROUP BY nom, faculta order by nom');
dm.fdConnect.Connected:=true;
Dm.FDmuallim.Active:=true;
dm.fdhisobot.Active:=true;
Миниатюры
Delphi запрос count() в DBGrid   Delphi запрос count() в DBGrid  
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.04.2023, 06:30
Ответы с готовыми решениями:

Delphi sql-запрос и DBGrid
Здравствуйте, прошу вашей помощи. Есть DBGrid куда выводится запрос DataModule2.ADOQuery2.Close; DataModule2.ADOQuery2.sql.Clear; ...

Delphi. SQL запрос ADOQuery. Выборка из Dbgrid в разных формах
помогите! не понимаю как сделать то что задумала. Есть таблица Курс (код, курс) и предметы(код, КодСтудента, кодДисциплины, кодСеместра,...

Запрос AdoQuery, соединение с таблицами в разных формах. Delphi. DBGrid
Здравствуйте, помогите пожалуйста! В общем нужно чтоб при выборе определенного (курса)из грида, а после нажатии "выбрать",...

25
2 / 2 / 0
Регистрация: 07.08.2015
Сообщений: 428
23.04.2023, 15:51  [ТС]
Студворк — интернет-сервис помощи студентам
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
if (combosol.ItemIndex=0)  and (combofac.ItemIndex=6)then
begin
sol2.Text:=inttostr(YearOf(Date)-1);
dm.fdhisobot.SQL.Clear;
Dm.fdhisobot.SQL.Add('select nom,faculta, count(nommakol) As summ FROM muallim');
Dm.fdhisobot.SQL.Add('left JOIN public."Makol" ON muallim.user_id= public."Makol".graf');
Dm.fdhisobot.SQL.Add('WHERE faculta=:param3 and solnashr between :param1 AND :param2');
Dm.fdhisobot.SQL.Add('GROUP BY nom, faculta order by nom');
Dm.fdhisobot.Params.ParamByName('param2').AsInteger:=YearOf(Date);
Dm.fdhisobot.Params.ParamByName('param1').AsInteger:=strtoint(sol2.text);
Dm.fdhisobot.Params.ParamValues['param3']:=QuotedStr(combofac.Items[combofac.ItemIndex]);
dm.fdhisobot.Active:=true;
dm.fdmuallim.Active:=true;
end;
я пробовал несколько вариантов но без результатов

Добавлено через 3 минуты
Цитата Сообщение от D1973 Посмотреть сообщение
А, кстати, WHERE - не запрос, это лишь одна из инструкций запроса
просто я не показал вес код sql
0
Модератор
 Аватар для D1973
9946 / 6481 / 2460
Регистрация: 21.01.2014
Сообщений: 27,465
Записей в блоге: 3
23.04.2023, 16:55
1. Какого типа поле solnashr?
2. Dm.fdhisobot.Params.ParamByName('param3' ).Value := QuotedStr(combofac.Items[combofac.ItemIndex]);
0
2 / 2 / 0
Регистрация: 07.08.2015
Сообщений: 428
23.04.2023, 17:42  [ТС]
Цитата Сообщение от D1973 Посмотреть сообщение
Dm.fdhisobot.Params.ParamValues['param3'].Value := QuotedStr(combofac.Items[combofac.ItemIndex]);
тут и без Value можно но все равно не работает только можно добавит
Delphi
1
ParamByName('param3')
чтобы сработал без ошибки !
ещё несколько способов применил не хочет работать
а solnashr это numeric

Цитата Сообщение от Firuz Посмотреть сообщение
Dm.fdhisobot.SQL.Add('WHERE faculta=''Математика и информатика'' and solnashr between :param1 AND :param2');
только так работает почему-то (

Добавлено через 37 минут
ладно буду написать отдельно
0
Модератор
 Аватар для D1973
9946 / 6481 / 2460
Регистрация: 21.01.2014
Сообщений: 27,465
Записей в блоге: 3
23.04.2023, 19:36
Цитата Сообщение от Firuz Посмотреть сообщение
только так работает почему-то
Так у Вас там двойные кавычки... Тогда так попробуйте:
Delphi
1
Dm.fdhisobot.Params.ParamByName('param3').AsString := Format('"%s"', [combofac.Items[combofac.ItemIndex]]);
а вообще, как по мне, каждое условие лучше скобками выделить:
Delphi
1
Dm.fdhisobot.SQL.Add('WHERE (faculta=:param3) and (solnashr between :param1 AND :param2)');
0
2 / 2 / 0
Регистрация: 07.08.2015
Сообщений: 428
23.04.2023, 20:20  [ТС]
неа не работает таблица открывается но то что внутри комбобокса не передается в запросе. ну не чего спасибо за внимание и помощи сделаю по старому
0
2 / 2 / 0
Регистрация: 07.08.2015
Сообщений: 428
24.04.2023, 09:52  [ТС]
сделал так работает может когда нибудь пригодится кому то

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
uniEdit2.Text := Combofac.Text;
if (combosol.ItemIndex=0) and (combofac.Text=uniedit2.text) then
begin
sol2.Text:=inttostr(YearOf(Date)-1);
dm.fdhisobot.SQL.Clear;
Dm.fdhisobot.SQL.Add('select nom,faculta, count(nommakol) As summ FROM muallim');
Dm.fdhisobot.SQL.Add('left JOIN public."Makol" ON muallim.user_id= public."Makol".graf');
Dm.fdhisobot.SQL.Add('WHERE faculta='''+uniedit2.text+''' and solnashr between :param1 AND :param2');
Dm.fdhisobot.SQL.Add('GROUP BY nom, faculta order by nom');
Dm.fdhisobot.Params.ParamByName('param2').AsInteger:=YearOf(Date);
Dm.fdhisobot.Params.ParamByName('param1').AsInteger:=strtoint(sol2.text);
dm.fdhisobot.Active:=true;
dm.fdmuallim.Active:=true;
end;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.04.2023, 09:52

Delphi XE4 SQL запрос. Добавление записи в последнюю позицию DBGrid
Еще раз всем привет! Возникла вот такая загогулина. Есть поле Edit, в котором есть данные. Эти данные надо перенести в таблицу. Но не...

Когда DBGrid.Columns.Count получает свое реальное значение?
Здравствуйте форумчане. Подскажите пожалуйста когда DBGrid.Columns.Count получает свое реальное значение, а именно: После выполнения...

count в delphi
как перевести с pascal в delphi данную строчку count:=count+count;

Нюансы синтаксиса: statement for - как понимать запись for (count=0, mask=1; count != 16; count++, mask<<= 1)?
Много всяких языков попадалось, относительно много конечно, но такое вижу первый раз, что бы тело FOR имело не 3 оператора - начальный,...

Запрос с count
Уважаемые друзья, помогите с запросом, есть основная таблица, к ней один ко многим связаны еще две таблицы, пытаюсь написать выборку что бы...


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

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения. https:/ / habr. com/ ru/ sandbox/ 295048/ начало и оглавление - Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование. . .
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0) Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона Уважаемые коллеги! В продолжение. . .
Грибы - это женщины, деревья - это мужчины. Анти инь янь для союза мужчины и женщины.
anaschu 18.07.2026
ГЛАВНЫЙ НАУЧНО-ФИЛОСОФСКИЙ ВЫВОД: Сексуально-Репродуктивный Капитализм против Государства Моногамии Коллеги, мы вышли на финишную прямую 20-мерного ОДУ-моделирования вековой сукцессии (ветка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru