![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
query [Р?мяПоля] вместо значения возвращает 0 [D5, MySQL]
paxer © (2003-05-13 17:20:00)Столбец определен как "int(10) unsigned".
В поле содержится положительное значение большее, чем может быть в Integer но меньшее чем Longword (2684354561). После SELECT *, Query.Open прохожу по строкам результата запроса. Для данного поля query[ИмяПоля] вместо значения 2684354561 возвращает 0. query.fields.FieldByNumber[Num].AsInteger - то же самое.
Как быть? Как правильно по теории получить данное значение?
MySQL,Query:TZMySqlQuery.
paxer (2003-05-14 10:51:00) [1]Пробовал меньшее число - все работает.
Никто не знает, куда переехал http://www.zeoslib.org?
NickBat (2003-05-14 10:35:00) [2]> Пробовал AsString, AsFloat, AsCurrency - 0.
А если просто Value?
И еще все записи имеют значение большее чем Integer? Попробуй записать в это поле какое-нибудь число. Посмотри, что выдаст.
> Может это глюк TZMySqlQuery?
Вот это скорее всего.
paxer (2003-05-14 10:05:00) [3]Пробовал AsString, AsFloat, AsCurrency - 0.
Пробовал так:
var pLW:^LongWord;
Res:LongWord;
begin
New(pLW);
Field:=q.Fields.FieldByNumber(5);
If not Field.GetData(pLW) Then ShowMessage("11");
Res:=pLW^;
end;
Результат Res=0.
Пробовал dbGrid подключить к Query - в столбце показывает 0.
Может это глюк TZMySqlQuery?
Rol (2003-05-14 07:08:00) [4]А вынуть как строку?
paxer (2003-05-13 18:07:00) [5]Хорошо. Не зная теории выскажу предположение:
var pLW:^LongWord;
Res:LongWord;
begin
pLW:=Адрес буфера данных;
Res:=pLW^;
end;
Только где взять этот "Адрес буфера данных"?
paxer (2003-05-13 17:49:00) [6]Вот потому-то я и спрашиваю: "Как правильно по теории получить данное значение?"
VAleksey (2003-05-13 17:38:00) [7]А как может тебе "AsInteger" вернуть что-то большее "integer" ?