Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.5 MB
Время: 0.046 c
1-1088342119
Ani
2004-06-27 17:15
2004.07.18
QuickReport.Preview не работает :(


4-1086331953
shelest
2004-06-04 10:52
2004.07.18
перехват клавиш?


11-1076681024
vicvs
2004-02-13 17:03
2004.07.18
Проблемы с подключением в uses


4-1086505717
SPeller
2004-06-06 11:08
2004.07.18
Исправить дамп РЕ чтоб запускался


11-1077455043
Shakonaff
2004-02-22 16:04
2004.07.18
Как использовать визуальные компоненты ?