Текущий архив: 2004.07.18;
Скачать: CL | DM;
Вниз
FieldByName vs FieldValues Найти похожие ветки
← →
TUser © (2004-06-22 18:20) [0]Везде пишут, что FieldByName - устаревшая функция. никак не пойму - почему. Чем FieldValues лучше?
← →
DrPass © (2004-06-23 01:54) [1]Borland так решила. А она знает. В общем, слушайся старших
← →
Silver Alex © (2004-06-23 09:45) [2]Мое мнение что FieldValues ничем не лучше, а наоборот так как возвращает всегда Variant.А как показывает практика Variant подходит не всегда, иногда нужно именно Integer или String, или еще чего тамю Тем более если посмотреть реализацию этого свойства , то результат там возвращается тупо Result := FieldByName(FieldName).Value
← →
Johnmen © (2004-06-23 09:52) [3]>TUser © (22.06.04 18:20)
>Везде пишут...
Можно узнать хотя бы один источник ?
← →
Vlad © (2004-06-23 10:00) [4]
> TUser © (22.06.04 18:20)
> Везде пишут, что FieldByName - устаревшая функция
"Не читайте перед завтраком советских газет" (c)
P.S. Если не нравится FieldByName используй FindField - это аналог.
← →
Плохиш © (2004-06-23 10:27) [5]> Silver Alex © (23.06.04 09:45) [2]
> Тем более если посмотреть реализацию этого свойства , то
> результат там возвращается тупо Result := FieldByName
Странно, в моей версии соурсов FieldValues позволяет получить значения сразу нескольких полей ;-)
>TUser © (22.06.04 18:20)
А ссылку на "везде" всё-таки хотелось бы получить
← →
TUser © (2004-06-23 10:33) [6]У ТП так написано и в книге "Delphi 7 proof".
Мне-то оба этих способа нравятся, просто хотелось понять, чем одно лучше другого. Но, как я понимаю, принципиальных недостатков ни у кго из них нет.
← →
Johnmen © (2004-06-23 10:41) [7]>TUser ©
В хелпе на FieldValues есть Note. Там указана особенность...:)
← →
Silver Alex © (2004-06-23 10:42) [8]
> Плохиш © (23.06.04 10:27) [5]
> Странно, в моей версии соурсов FieldValues позволяет получить >значения сразу нескольких полей ;-)
Странно,в моей версии тоже.А ты считал это достоинством именно твоей версии?И к чему эта реплика?
← →
Плохиш © (2004-06-23 10:49) [9]>Silver Alex © (23.06.04 10:42) [8]
Реплика к
> > Silver Alex © (23.06.04 09:45) [2]
> > Тем более если посмотреть реализацию этого свойства , то
> > результат там возвращается тупо Result := FieldByName
или Вы сразу забываете свои слова?
← →
Silver Alex © (2004-06-23 11:06) [10]я понял. Конечно я знаю что возвращается значение нескольких полей, но я имел ввиду что в любом случае возвращается значение TField.Value, то есть Variant.А так как вопрос был "чем лучше FieldValues FieldByName" , я и показал что все равно идет обращение к свойству FieldByName.
Надеюсь ясно обьяснился :)
← →
max1000 (2004-06-23 11:40) [11]Я предпочитаю использовать FieldValues кргда работаю с DBF файлами которые заношу в IBase там не надо знать какие типы полей. а просто указываем FieldValues
← →
Sandman25 © (2004-06-23 11:47) [12]MyField: TField;
MyField := FieldByName(...);
First;
while not Eof do
...
MyField.AsXXX
ИМХО, самый быстрый способ
← →
Жук © (2004-06-23 13:00) [13]
> Sandman25 © (23.06.04 11:47) [12]
> ИМХО, самый быстрый способ
Самый быстрый способ чего ? "Приготовления сосисок"(с) ? :-)
← →
Slym © (2004-06-23 13:32) [14]Note: Because FieldValues always uses Variants, it may be a somewhat slower method of accessing data, than using a field’s native format (for example, using a field’s AsXXX property), especially in applications that process large amounts of data.
Перевод: с вариантами медленнее чем с нативными методами asXXX, особенно при больших потоках данных.
← →
Sandman25 © (2004-06-23 13:36) [15][13] Жук © (23.06.04 13:00)
Самый быстрый способ обращения к полю во нескольких записях DataSet"а, переданного параметром.
← →
Anatoly Podgoretsky © (2004-06-23 13:40) [16]Еще быстрее не TField.AsXXX, а TxxField.Value отсутствуют лишнии проверки и преобразования, значение переменной сразу пишется.
← →
Sandman25 © (2004-06-23 13:44) [17][16] Anatoly Podgoretsky © (23.06.04 13:40)
Согласен. Именно поэтому я написал про DataSet как параметр.
Страницы: 1 вся ветка
Текущий архив: 2004.07.18;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.028 c