Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.19;
Скачать: CL | DM;

Вниз

В чем беда?   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.011 c
3-61462
Sokol
2002-12-01 01:43
2002.12.19
Как программно изменить пароль в MSAccess?


14-61805
Axis_of_Evil
2002-11-27 12:47
2002.12.19
Общедельфийский рейтинг музыки


3-61397
Stenkz
2002-12-03 05:27
2002.12.19
SQL - Возможен ли запрос с вложенным суммированием???


7-61845
asdqwer
2002-09-12 07:23
2002.12.19
Инфразвук


6-61718
Polevi
2002-10-22 15:15
2002.12.19
В чем разница ?