Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 07.11.2006, 09:24   #21
SuperVisor
Павел Сергеевич
Форумчанин
 
Регистрация: 05.11.2006
Сообщений: 665
По умолчанию

Цитата:
Сообщение от Nikola Посмотреть сообщение
А для чего здесь символы * *?
Просто, чтоб были
Познавая других, мы познаем себя.
С'est la vie...
SuperVisor вне форума
Старый 07.11.2006, 09:28   #22
SuperVisor
Павел Сергеевич
Форумчанин
 
Регистрация: 05.11.2006
Сообщений: 665
По умолчанию

Цитата:
Сообщение от Nikola Посмотреть сообщение
...хотя возникла проблема в последней строке с +cost.
А что именно?
Познавая других, мы познаем себя.
С'est la vie...
SuperVisor вне форума
Старый 07.11.2006, 15:01   #23
Nikola
Пользователь
 
Регистрация: 01.11.2006
Сообщений: 22
По умолчанию

C этим я разобрался:
query1.SQL.Text:='select inv,marka,cost+'+floattostr(x)+' from avto;';
только вместо cost поставил x.

Теперь очередная проблема:

IF COMBOBOX1.ItemIndex=4 then begin
Query2.SQL.Text:=('SELECT Azs.Inv, sum (azs.vl*fprice.price) as Стоимость FROM "azs.DB" Azs, "Fprice.DB" Fprice where azs.fuel=fprice.fuel group by azs.inv');
query4.SQL.Text:='select inv,crack,cost as Затраты from remont ;';
query1.SQL.Text:='select inv,marka,cost from avto;';
query1.Open;
query2.Open;
query4.Open;
for i:=1 to query1.recordcount do begin
x:=0;
for j:=1 to query2.RecordCount do begin
if
query1.FieldByName('inv').AsInteger =query2.FieldByName('inv').AsIntege r then
x:=x+query2.FieldByName('Стоимость' ).AsFloat;
query2.Next;
end;
for k:=1 to query4.RecordCount do begin
if
query1.FieldByName('inv').AsInteger =query4.FieldByName('inv').AsIntege r then
x:=x+query4.FieldByName('Затраты'). AsFloat;
query4.Next;
end;
query2.First;
query4.First;
query1.SQL.Text:='select inv,marka,cost+'+floattostr(x)+' from avto;';
query1.Close;
query1.Open;
query1.Next;
end;
end;

Везде прибавляется одно и то же число.
Nikola вне форума
Старый 07.11.2006, 15:10   #24
SuperVisor
Павел Сергеевич
Форумчанин
 
Регистрация: 05.11.2006
Сообщений: 665
По умолчанию

А к чему у тебя эти строки с оператором for?
Цитата:
for j:=1 to query2.RecordCount do
begin
if
query1.FieldByName('inv').AsInteger =query2.FieldBy Name('inv').AsInteger then
x:=x+query2.FieldByName('Стоимость' ).AsFloat;
query2.Next;
end;
for k:=1 to query4.RecordCount do begin
if
query1.FieldByName('inv').AsInteger =query4.FieldBy Name('inv').AsInteger then
x:=x+query4.FieldByName('Затраты'). AsFloat;
query4.Next;
end;
Какую функцию он у тебя выполняет?
Познавая других, мы познаем себя.
С'est la vie...
SuperVisor вне форума
Старый 07.11.2006, 15:26   #25
Nikola
Пользователь
 
Регистрация: 01.11.2006
Сообщений: 22
По умолчанию

Цитата:
Сообщение от SuperVisor Посмотреть сообщение
А к чему у тебя эти строки с оператором for?

Какую функцию он у тебя выполняет?
Пробегает по всем записям ,сравнивая значение в поле inv.
И одновременно наращивает x, т е значение общих затрат.
Nikola вне форума
Старый 07.11.2006, 15:34   #26
Nikola
Пользователь
 
Регистрация: 01.11.2006
Сообщений: 22
По умолчанию

Думаю ошибка здесь:
query1.SQL.Text:='select inv,marka,cost+'+floattostr(x)+' from avto;';
Получается, что к числу в ячейке прибавляется строка, хотя поле cost типа number
Nikola вне форума
Старый 07.11.2006, 15:34   #27
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
Вопрос новый вопрос :)

мне нужно вставить объект в
blob поле
таблицы с помощью запроса !!
Берегите друг друга!

Последний раз редактировалось Virtson; 07.11.2006 в 16:17.
Virtson вне форума
Старый 07.11.2006, 15:39   #28
Nikola
Пользователь
 
Регистрация: 01.11.2006
Сообщений: 22
По умолчанию

Цитата:
Сообщение от Virtson Посмотреть сообщение
нужно вставить объект в
blob поле
таблицы с помощью запроса !!
Как это? с Blob ещё ни разу не сталкивался.
Nikola вне форума
Старый 07.11.2006, 15:46   #29
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

с помощью потока уже получается, нужно с помощью Sql.
Берегите друг друга!
Virtson вне форума
Старый 07.11.2006, 15:50   #30
Nikola
Пользователь
 
Регистрация: 01.11.2006
Сообщений: 22
По умолчанию

Цитата:
Сообщение от Virtson Посмотреть сообщение
с помощью потока уже получается, нужно с помощью Sql.
На sql и не получилось. Пробую таким путём.
Nikola вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запросы SQL в Delphi antoni БД в Delphi 13 02.09.2008 00:53
Запросы к БД xDjarx БД в Delphi 6 14.05.2008 17:04
Многотабличные запросы! (модификация данных). MSSQL +Delphi MoGiLsHiKK БД в Delphi 1 25.12.2007 16:21
Запросы к БД H@Z@RD Общие вопросы Delphi 3 28.03.2007 01:39