Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Полученный результат передать переменной. [D6, Paradox]


Леонид ©   (2005-06-14 13:08:00) 

Делаю я в TQuery запрос select max(RN) from pribor
выполняю его.
Как передать полученное значение переменной. Извените, но я не шучу. Действительно не знаю. Покажите пример пожалуйста.


Ильш   (2005-06-15 11:19:00) [1]


> 'select max(RN) from pribor'
вместо
> 'select max(RN) as MaxRN from pribor'


вот надо ж дожить до такого... убил чювак :(((


stud   (2005-06-14 16:36:00) [2]


> А если FieldByName, то он атоматически решит траблу
> нового поля или изменение его типа ?

по крайней мере по имени сразу будет понятно что к чему. а индексы - потом вспоминай какой для чего)))


ANB   (2005-06-14 15:32:00) [3]


> А если FieldByName, то он атоматически решит траблу нового
> поля или изменение его типа ?
- старые куски переделывать не придется, особливо если AsString.


msguns   (2005-06-14 15:29:00) [4]

>stud ©   (14.06.05 15:11) [11]
>а потом добавит поле, индексы изменяться и опять проблемы))

А если FieldByName, то он атоматически решит траблу нового поля или изменение его типа ?


ANB   (2005-06-14 15:13:00) [5]

Имхо, я всегда агрегатным полям алиас присваиваю. Чтобы везде можно было одинаково FieldByName юзать. Не нравится мне по порядковому номеру.


stud   (2005-06-14 15:11:00) [6]


> Если запрос возвращает фиксированное кол-во агрегатных
> значений

а потом добавит поле, индексы изменяться и опять проблемы))


msguns   (2005-06-14 14:01:00) [7]

Если запрос возвращает фиксированное кол-во агрегатныхзначений, зачем их (поля) вообще именовать ? Не проще ли TDataSet.Fields[n].AsXXX ? Где n - порядковй № агрегата в запросе-1


stud   (2005-06-14 13:43:00) [8]

см.

> Ricko ©   (14.06.05 13:09) [2][Ответить]


stud   (2005-06-14 13:42:00) [9]

очевидно
DM.TempSQL.SQL.Add('select max(RN) AS MAXRN from pribor');


sniknik   (2005-06-14 13:25:00) [10]

код в
Леонид   (14.06.05 13:16) [4]
<>
Ricko ©   (14.06.05 13:09) [2]

+
IntToStr(nRN) лишнее (если ограничится приведенным кодом), проще
Pribor_Form.Caption:= DM.TempSQL.FieldByName('MaxRN').AsString;


Zacho   (2005-06-14 13:22:00) [11]

Леонид   (14.06.05 13:16) [4]

А, может, перед тем как пробовать, всё-таки учебник и хелп почитать ?


Val   (2005-06-14 13:17:00) [12]

если ошибка - как вы думаете - _так_ у вас с кодом? посмотрите внимательнее на ответы.


Леонид   (2005-06-14 13:16:00) [13]

Вот мой запрос.
Пробовал вариант Stud'a - ошибка, вариант Ricko - ошибка, 3-й еще не пробовал. Может что не так у меня с кодом?
filds maxRn not found
  DM.TempSQL.SQL.Clear;
  DM.TempSQL.SQL.Add('select max(RN) from pribor');
  DM.TempSQL.Active:=true;
  nRN:=DM.TempSQL.FieldByName('MaxRN').AsInteger;
  Pribor_Form.Caption:=IntToStr(nRN)


Zacho   (2005-06-14 13:10:00) [14]

MyVar:=MyQuery.Fields[0].Value

Есть и другие варианты.

И изучи любойучебник по Дельфи, ибо это - базовыезнания.


stud   (2005-06-14 13:09:00) [15]

переменная:=квери.филдвалуес['поле'];


Ricko   (2005-06-14 13:09:00) [16]

"select max(RN) as MaxRN from pribor"

i:=Query.FielByName('MaxRN').AsInteger


Наверх

Титульная страница Поиск, карта сайта Написать письмо