Форум: "Базы";
Текущий архив: 2002.02.11;
Скачать: [xml.tar.bz2];
ВнизDirect Oracle Access. Найти похожие ветки
← →
Andrey007 (2002-01-15 09:51) [0](В продолжении темы http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1009611061&n=1)
Поставил я себе DOA, взял SQL запрос (TOracleQuery), а у него нету Locate. Неужели всё придётся делать через параметры (Variables)? Ведь тогда получается, что для каждого поиска нужно писать свой SQL-запрос, что неудобно. Или может я не нашёл чего? Или версия DOA старая?
← →
Юрий Жуков (2002-01-15 10:41) [1]В DOA Есть компонент TORACLEDataSet - в нем и будет твой locate
← →
Andrey007 (2002-01-15 10:43) [2]Но мне хотелось бы иметь Locate для Query.
← →
EAlexander (2002-01-15 10:47) [3]OracleQuery - однонаправленный курсор - какой там может быть Locate ?:)
Тем более разница по скорости между OracleDataSet и OracleQuery при небольших объемах данных - не более 1000 строк - практически нет.
← →
Andrey007 (2002-01-15 17:31) [4]Дело не в объёмах, а в том, что запрос по нескольким таблицам.
← →
EAlexander (2002-01-15 17:40) [5]А какая разница?
просто OracleQuery не кеширует данные как это делает OracleDataSet, у Query только одно текущее значение и читается как FieldAsXXXX, поэтому там Locate быть не может.
← →
Внук (2002-01-15 17:41) [6]Ну и что? TOracleDataSet это позволяет.
← →
Внук (2002-01-15 17:55) [7]Кстати, если пользоваться TOracleDataSet, то лучше употреблять метод SearchRecord, если версия DOA не очень старая. Будет работать быстрее (по крайней мере, так пишут разработчики).
← →
EAlexander (2002-01-15 18:37) [8]OracleDataSet - наследник TDataSet - и следовательно, все, что там есть (Locate и т.п.) - работает, должно, по крайней мере.
А OracleQuery работает пошустрей, если у БД надо исполнить запрос, короче - когда НД не нужен.
← →
MaXimka (2002-01-15 22:41) [9]Вот сейчас поковырялся с OracleDataSet - ни фига не работает ни Locate, ни этот широко разрекламированный SearchRecord. Например, пытался найти строку, имеющую в определённом поле заданное число - в результате всегда находится 0, даже если таких строк вообще нет. Вот так, значица. DOA у меня 3.4.5.
← →
Юрий Жуков (2002-01-16 08:58) [10]У меня TOracleDataSet.Locate точно работает.
DOA 3.4.5 + D6(Update1)
← →
Andrey007 (2002-01-16 09:14) [11]EAlexander:
>А OracleQuery работает пошустрей, если у БД надо исполнить запрос, короче - когда НД не нужен.
А что такое НД?
Кстати, у меня DOA 3.4.3 для Delphi 5.
← →
EternalWonderer (2002-01-16 10:36) [12]И у меня TOracleDataSet.Locate работает, и даже очень шустро
DOA 342, D6(Update1).
← →
Andrey007 (2002-01-16 11:23) [13]А-а, понятно теперь всё. Оказывается TOracleDataSet тоже сделан для работы с запросами. Но тогда непонятно какая компонента является аналогом TTable?
← →
EAlexander (2002-01-16 11:44) [14]НД - набор данных.
В клиент/сервере аналогов TTable нет, поскольку там все через запросы - получается SELECT * FROM TABLE1 - очень похоже на TTABLE :)
← →
Andrey007 (2002-01-16 17:09) [15]А чем отличается TOracleQuery от TOracleDataSet кроме наличия Locate у TOracleDataSet? Где-нибудь в справке по DOA-компонентам есть описание этих отличий?
← →
EAlexander (2002-01-16 18:45) [16]OracleQuery - однонаправленный курсор, у него нет понятия о TField, методов FieldByName и т.п.
OracleDataSet - это НД, наследник TDataSet, у него есть все (или практически все - зависит от особенностей Ora), что и у стандартного BDE TQuery.
P.S. вообще есть help, там все написано.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.02.11;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.003 c