Форум: "Базы";
Текущий архив: 2002.12.19;
Скачать: [xml.tar.bz2];
ВнизВ чем беда? Найти похожие ветки
← →
Shved (2002-11-29 13:47) [0]Такая проблема: есть два формирования запроса в Query:
Form1.Query.Close;
Form1.Query.SQL.Clear;
Form1.Query.SQL.Add("select DRIVER, Bdauto."DAY", Bdauto."AUTO", PROBEG, TONN, Bdauto."TIME", PROC");
Form1.Query.SQL.Add("FROM "BDAuto.DB" Bdauto");
Form1.Query.SQL.Add("WHERE DRIVER = "+#39+"Вася"+#39);
Form1.Query.Open;
Form1.DBGrid1.DataSource:=Form1.DataSource2;CODE>
и
Form1.Query.Close;
Form1.Query.SQL.Clear;
Form1.Query.SQL.Add("select AUTO, Bdauto."DAY", Bdauto."PROBEG", PROBEG, TONN, Bdauto."TIME", PROC");
Form1.Query.SQL.Add("FROM "BDAuto.DB" Bdauto");
Form1.Query.SQL.Add("WHERE AUTO = "+#39+"115 Запорожец"+#39);
Form1.Query.Open;
Form1.DBGrid1.DataSource:=Form1.DataSource2;
В первом случае все работает как надо, а во втором вылетает ошибка, что не понимает AUTO. Как лечить?
И еще: есть DBGrid, сформированый по такому запросу:
select * from DBAuto where DRIVER = "Вася"
Каким образом теперь посчитать сумму в колонке PROBEG во вновь сформированном Grid"e? К каким данным необходимо обращаться при вычислении суммы? Или нужно строить SQL-запрос по-другому?
Если можно, то напишите, пожалста, код - вешаюсь уже с этой проблемой.
← →
Fishka (2002-11-29 13:56) [1]Ничего не понимаю...
Разве для таблиц IB5.x надо указывать расширение .DB?
А слово AUTO не является зарезервированным?
Если да, то в запросе надо его писать с кавычками "AUTO".
Если необходимо иметь сумму в DBGrid в концеБ то запрос м.б. с использованием UNION (см HELP).
← →
Shved (2002-11-29 14:07) [2]Видимо, действительно зарезервированное. После вставки кавычек все нормализовалось (в плане ошибок), но теперь сортировки не происходит - выводится пустая строка в гриде. Можно что-нибудь придумать, или проще переименовать Fields в базе?
А по поводу UNION - напишите, пожалуйста код запроса, а то я боюсь сам не разберусь, да и Help глючит (установка кривая была).
← →
Fishka (2002-11-29 15:16) [3]Да, проще переименовать Fields AUTO в базе. По крайней мере, не надо будет думать о кавычках и т.п.
Если в конце таблицы нужна запись с суммой, то к тексту запроса можно добавить
UNION select "список полей, в первом select, кроме поля PROBEG, вместо которого ыгь(PROBEG) "
from "имя таблицы"
where "те же условия, что и первом select".
Более-менее понятно?
← →
Shved (2002-11-29 15:37) [4]Да, спасибо большое!
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.12.19;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c