Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
21 / 6 / 0
Регистрация: 10.09.2012
Сообщений: 115

Запрос на подсчет определенных полей (Count) выдает ошибку

29.10.2012, 09:32. Показов 1581. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!Я в отчаянии...Ну вообще ума не приложу что случилось!Все запросы работают,но когда я ввожу запрос на подсчет определенныхп полей (Count) мне выскакивает ошибка .....class EDatabaseError with message 'ADOQuery1:Field 'Идентиф_оборудов' not found... . Если же я сделаю запрос просто на выборку данных-никаких ошибок. Когда добавляю записи-тоже нет ошибок. Но если я сделаю Count даже из другой таблицы,ошибка выскакивает таже. Пожалуйста!Пмогите!!Вот код,но врядли поможет,текст пароса как и везде....

C++
1
2
3
4
5
6
7
8
9
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("SELECT count(*) AS push FROM adress WHERE Идентиф_оборудов = '"+Edit11->Text+"'");
ADOQuery1->Open();
Label6->Caption = IntToStr(ADOQuery1->FieldByName("push")->AsInteger);
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("SELECT * FROM adress");
ADOQuery1->Open();
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.10.2012, 09:32
Ответы с готовыми решениями:

count выдает ошибку
$login = $_POST; $pass = $_POST; $mysql = new mysqli("localhost", "root", "", "startbip"); $result = $mysql->query("SELECT *...

Библиотека выдаёт ошибку при определённых условиях
Писал проект всё прекрасно работает, проект с использованием glut. Решил перейти на SDL2 создание окна, всё перенёс туда. Вылетает...

Хочу написать программу для подсчета площади прямоугольника, на строке S = count(S, a, b); выдает ошибку переменная S возможно не инициализирована.
Помогите начинающему програмисту, пожалуйста. Хочу написать программу для подсчета площади прямоугольника, на строке S = count(S, a, b);...

16
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
29.10.2012, 09:51
Раз) Дурацкий вопрос, но таблица adress точно содержит Идентиф_оборудов?
Раз с половиной) Лучше на всякий случай обзывать поля латинскими символами.
Два) Попробовать по другому получать количество полей.
Три) С пошагового запуститься и поглядеть что точно лежит в count.
0
21 / 6 / 0
Регистрация: 10.09.2012
Сообщений: 115
29.10.2012, 09:56  [ТС]
Да,поле точно сущетсвует,иначе другие запросы бы не выполнялись. И даже еслиб не существовало,при выполнении такого запроса с дугой таблицей ругается так же на это поле.
Пробовала считать по-другому,сравнивала в цикле записи,но это мне не подходит,т.к. пока курсор бегает по записям,в дбедитах меняются значения,а проверку я должна делать во время ввода данных....

Вот так по-дурацки понедельник начался((((((((((((
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
29.10.2012, 10:19
А если оставить просто так

C++
1
2
3
4
5
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("SELECT count(*) AS push FROM adress WHERE Идентиф_оборудов = '"+Edit11->Text+"'");
ADOQuery1->Open();
Label6->Caption = IntToStr(ADOQuery1->FieldByName("push")->AsInteger);
Работает?
1
21 / 6 / 0
Регистрация: 10.09.2012
Сообщений: 115
29.10.2012, 10:24  [ТС]
Все та же ошибка((((((
Миниатюры
Запрос на подсчет определенных полей (Count) выдает ошибку  
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
29.10.2012, 10:28
Если проект не конфиденциальный, то сбрось его сюда я гляну
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
29.10.2012, 10:34
Я думаю, что COUNT здесь ни при чем. Проверить очень просто - замени в своем запросе COUNT(*) просто на литерал, скажем, 1 или '1'
1
21 / 6 / 0
Регистрация: 10.09.2012
Сообщений: 115
29.10.2012, 10:35  [ТС]
вот,пароль в личку вышлю. Запаролила,т.к. не хочу чтоб проект мой кто-то тупо скатал)
Вложения
Тип файла: rar PRCC.rar (1.95 Мб, 5 просмотров)
0
21 / 6 / 0
Регистрация: 10.09.2012
Сообщений: 115
29.10.2012, 10:46  [ТС]
вот так как-то))

Добавлено через 9 минут
я планирую перекинуть запрос потом в другое место,поэтому пока он так закинут на батон1)))ойой,сразу прошу прощения за беспорядок...)
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
29.10.2012, 10:47
Так тебе надо сделать подсчёт строк или подсчёт значений в строках?
0
21 / 6 / 0
Регистрация: 10.09.2012
Сообщений: 115
29.10.2012, 11:22  [ТС]
поддсчитать количество строк,удовлетворяющих условию....я перепутала чтот там?

Добавлено через 3 минуты
ООх,а как вы запустите то ее без базы?!...Могу вообще TeamViewer предложить!прост это ошибка...хочу уж скорей отдать это...

Добавлено через 29 минут
Цитата Сообщение от Grossmeister Посмотреть сообщение
Я думаю, что COUNT здесь ни при чем. Проверить очень просто - замени в своем запросе COUNT(*) просто на литерал, скажем, 1 или '1'
Да,ошибка возникает та же...Тогда в чем же может быть проблема?
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
29.10.2012, 11:24
Цитата Сообщение от renataakhm
Да,ошибка возникает та же...Тогда в чем же может быть проблема?
Так написано же в сообщениии: такого поля в этой таблице нет
0
21 / 6 / 0
Регистрация: 10.09.2012
Сообщений: 115
29.10.2012, 11:28  [ТС]
Цитата Сообщение от Grossmeister Посмотреть сообщение
Так написано же в сообщениии: такого поля в этой таблице нет
Так на самом деле то оно есть! И даже если я сделаю запрос не для таблицы adress,а, например, для таблицы equip, выскаивает тоже самое самое сообщение. И птом,если этого поля нет,то как добавлются записи,при этом не единой ошибки?
0
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
29.10.2012, 11:57
Давай через TeamViewer
1
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
29.10.2012, 11:58
Цитата Сообщение от renataakhm
Так на самом деле то оно есть!
Откуда знаешь?

Цитата Сообщение от renataakhm
И даже если я сделаю запрос не для таблицы adress,а, например, для таблицы equip, выскаивает тоже самое самое сообщение.
А причем тут другая таблица? В каждой свой набор полей (колонок)

Цитата Сообщение от renataakhm
И птом,если этого поля нет,то как добавлются записи,при этом не единой ошибки?
Так смотря как добавляются.
Можно добавлять с перечислением полей:
SQL
1
2
INSERT INTO tab1(fld1, fld2, ...)
VALUES(val1, val2, ...)
, а можно без перечисления:
SQL
1
2
INSERT INTO tab1
VALUES(val1, val2, ...)

PS
Еще одна подсказка. Есть буквы, которые одинаково выглядят в русском и английском словаре, например "о". Если при создании поля (по той или иной причине) у тебя влезла хоть одна английская "о", а в запросе ты все указываешь русскими буквами, то понятное дело СУБД никак его не опознает.
0
21 / 6 / 0
Регистрация: 10.09.2012
Сообщений: 115
29.10.2012, 12:45  [ТС]
Цитата Сообщение от Grossmeister Посмотреть сообщение
Откуда знаешь?.
Таблица отображается,при запуске все фильтруется. Если б ы поля небыло,выбрасывалась бы ошибка.

Цитата Сообщение от Grossmeister Посмотреть сообщение
А причем тут другая таблица? В каждой свой набор полей (колонок)
Я имела ввиду,если я создам запрос на подсчет данных другой таблицы, выйдет ошибка о поле Идентиф_оборудов,хотя это поле вообще в другой таблице.

Цитата Сообщение от Grossmeister Посмотреть сообщение
Так смотря как добавляются.
Можно добавлять с перечислением полей:
SQL
1
2
INSERT INTO tab1(fld1, fld2, ...)
VALUES(val1, val2, ...)
, а можно без перечисления:
SQL
1
2
INSERT INTO tab1
VALUES(val1, val2, ...)
)
Про добавления,это я опять же о том,что еслиб не существовало такое поле,то данные и не добавлялись,выводилась б ошибка.
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
29.10.2012, 12:55
Цитата Сообщение от renataakhm
Таблица отображается,при запуске все фильтруется. Если б ы поля небыло,выбрасывалась бы ошибка.
Смотря как отображается. Если я пишу:
SQL
1
2
SELECT *
FROM adress
то отобразится в любом случае. А вот попробуй с явным указанием полей:
SQL
1
2
SELECT Идентиф_оборудов 
FROM adress
К слову сказать, у многих СУБД существуют стандарты в именовании полей. Если хочется использовать нестандартное имя, то его нужно заключать в двойные кавычки или квадр. скобки (в зависимости от СУБД).

Цитата Сообщение от renataakhm
Я имела ввиду,если я создам запрос на подсчет данных другой таблицы, выйдет ошибка о поле Идентиф_оборудов,хотя это поле вообще в другой таблице.
Покажи пример такого запроса.
Кстати, если ты формируешь запрос динамически, то неплохо бы его вывести на экран перед Open. Мало ли там с кавычками что-то не то, или еще чего...

Цитата Сообщение от renataakhm
Про добавления,это я опять же о том,что еслиб не существовало такое поле,то данные и не добавлялись,выводилась б ошибка.
Так я уже сказал, что разница в том, упоминается это "подозрительное" поле явно, или нет
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.10.2012, 12:55
Помогаю со студенческими работами здесь

Подсчет значения по формуле. Выдает ошибку
S=H^2 sin\, \frac{H}{x} +b^3\;,\; H=\begin{cases} \frac{b}{x^2} & \text{ , } p \le -1.1 \\ bx\, sin\, p+\frac{a}{2} & \text{ , } -1.1...

Подсчет одинаковых значений выдает ошибку
$os = array(); $result = mysqli_query($bd, "SELECT * FROM messages WHERE id2='".$_SESSION."'"); while ($row =...

WebBrowser выдает ошибку при заполнении полей для отправки email
Вот решил добавить вход на gmail и столкнулся с ошибкой(скриншот) Вот код который выдаёт ошибку: ...

Запрос выдает ошибку
procedure TForm1.BitBtn1Click(Sender: TObject); begin fDM.QuZap2.Active:=false; fDM.QuZap2.SQL.Clear; fDM.QuZap2.ExecSQL('INSERT...

Ajax запрос не работает, но ошибку не выдает
Здравствуйте недавно начал изучать Аjax. (Основи Javascript знаю, jQuery тоже) В уроке который прохожу автор предлагает использовать Аjax...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru