Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 09.02.2010, 16:52
Sneginka Sneginka вне форума
Прохожий
 
Регистрация: 27.12.2009
Сообщения: 2
Репутация: 10
По умолчанию Проблема с функцией SUM

Здравствуйте.
Помогите разобраться. Использую Delphi 7 и InterBase 6.
В Query пишу запрос
"select nomer, sum (kol_sut), sum (summa) from razm
group by nomer;"
вывожу данные в DBGrid. В свойстве FieldName у колонок выбираю имя поля. Открываю запрос и в DBGrid во 2ой и 3ей колонке везде написано (BYTES).

во втором Query запрос "select sum(summa) from usl_kl;"
вывожу в DBEdit - опять выводится (BYTES)
Что это значит и как исправить?
C другими агрегаnными функциями все норамльно работает, например если написать max или count.
Ответить с цитированием
  #2  
Старый 09.02.2010, 19:58
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,015
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Вероятно, на выходе получается какое-нить неудобоваримое число. Попробуй ограничить для проверки выборку и посмотреть - если сумируется пара-тройка записей нормальное ли число выводится.
Ответить с цитированием
  #3  
Старый 10.02.2010, 22:13
Sneginka Sneginka вне форума
Прохожий
 
Регистрация: 27.12.2009
Сообщения: 2
Репутация: 10
По умолчанию

select sum(summa) from usl_kl
в таблице usl_kl итак всего 2 записи. значения поля summa 100 и 250, т.е. сумма всего 350. Тип данных Integer. выводит (BYTES)
Ответить с цитированием
  #4  
Старый 11.02.2010, 01:51
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,015
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Попробуй у квери или у грида создать колонку нужного типа принудительно. Может оно просто тип путает.

И еще посмотри какой диалект стоит. Только сегодня "схватил" прикольную ошибку. Стоит тип данных столбца DATE. При запуске программы вылетает ошибка, что такой тип данных не поддерживается диалектом 1. Пока понял что за ошибка - замучился. А все дело оказалось в том, что по умолчанию у FIB'а стоить диалект 1, хотя сервер поддерживает диалект 3, на котором база и сделана. Поменял диалект - и все прекрасно заработало...
Ответить с цитированием
  #5  
Старый 11.02.2010, 17:38
Sneginka Sneginka вне форума
Прохожий
 
Регистрация: 27.12.2009
Сообщения: 2
Репутация: 10
По умолчанию

Цитата:
Сообщение от lmikle
Попробуй у квери или у грида создать колонку нужного типа принудительно. Может оно просто тип путает.

я не знаю как это делается. Предположила что так query - field - new field
name - пишу имя поля из запроса, потом где type он автоматически пишет bytes, я меняю на integer, field type оставляю data. потом в выбираю в поле в dbgrid. открываю запрос вылазит ошибка type mismatch for field 'sum_summa' , epecting: integer actual: bytes


Цитата:
Сообщение от lmikle
И еще посмотри какой диалект стоит. Только сегодня "схватил" прикольную ошибку. Стоит тип данных столбца DATE. При запуске программы вылетает ошибка, что такой тип данных не поддерживается диалектом 1. Пока понял что за ошибка - замучился. А все дело оказалось в том, что по умолчанию у FIB'а стоить диалект 1, хотя сервер поддерживает диалект 3, на котором база и сделана. Поменял диалект - и все прекрасно заработало...
с этим у меня поначалу тоже была такая же фигня, так что стоит уже диалект 3, с датами работает нормально
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 17:34.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter