![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DataSet.recNo [D6]
йцукен © (2005-10-26 10:56:00)Результат запроса query отображен в DBGRID
Если идет работа с Парадоксом то сабж отображает номер активной записи.
А вот если задействован MSSQL то сабж показывает -1, при этом конечно query открыт и DataSet.RecordCount показывает все верно.
Подскажите в чем может быть дело
Desdechado (2005-10-26 13:21:00) [21]для узнавания количества записей вовсе не нужно тащить данные на клиента, достаточно select count(*)
а если надо совместить, то, имхо, корректнее (для больших выборок) будет в одной транзакции сначала select count, а потом select данные с одинаковыми условиями
хотя и несколько тяжеловесно
msguns (2005-10-26 13:12:00) [22]>Digitman © (26.10.05 12:51) [11]
>к людЯм нужно помягше, а на вещи смотреть ширше)
Так я ж вродя мягенько так, вежливенько ;)))
>Johnmen в [2] ведет речь (и правильно ведет !) о том, что рано или поздно может возникнуть необходимость адаптации алгоритма кл.приложения к иной СУБД, в которой эти самые RecNo и RecordCount , будучи работающими под старой СУБД и посему употребленными "в лоб", попросту летят коту под хвост, что потребует либо отказ от их использования либо основательную перетряску алгоритма... в то время как BOF/EOF, будучи употребленными к месту, обязаны и будут работать в клиентской среде любой СУБД.
Ага-ага.. Эт если я например, задумал построить курятник, то надо сразу делать его с таким расчетом, что в перспективе там могут содержаться коровые или, например, крокодилы.
Я вообще не могу взять в толк, почему некоторые Мастера на вопрос учащегося техникума о конструкции табуретки отсылают его в архитектурный институт или советуют для начала изучить основы сопромата.
Кстати, а есть полная уверенность, что в ближайшем будущем все новые компоненты лоступа будут поддерживать упомянутый BOF,EOF ?
И еще. Значицца, чтобы выяснить кол-во извлеченных записей, непременно надо "исползать" вдоль и поперек (от BOF до EOF) весь курсор ? Или я чего-то не "ущучил" ?
Sergey13 (2005-10-26 12:55:00) [23]Опять холиваром запахло. 8-)
Кину тогда я две копейки что ли.
Использовать можно все что работает. Но с умом. И помня, что нет ничего, что работает всегда и везде одинаково. Ну и в справку почаще глядеть.
ИМХО, все разумеется.
Digitman (2005-10-26 12:51:00) [24]
> msguns © (26.10.05 11:59) [7]
к людЯм нужно помягше, а на вещи смотреть ширше)
Johnmen в [2] ведет речь (и правильно ведет !) о том, что рано или поздно может возникнуть необходимость адаптации алгоритма кл.приложения к иной СУБД, в которой эти самые RecNo и RecordCount , будучи работающими под старой СУБД и посему употребленными "в лоб", попросту летят коту под хвост, что потребует либо отказ от их использования либо основательную перетряску алгоритма... в то время как BOF/EOF, будучи употребленными к месту, обязаны и будут работать в клиентской среде любой СУБД.
Надеюсь, мысль ты ущучил ?
Desdechado (2005-10-26 12:45:00) [25]2 msguns
еще один момент по нюансам:
в Си, например, реализация short int, int, long int очень сильно зависит от платформы (разрядность, например). И многие написанные ранее вещи в условиях нынешних компиляторов странно себя ведут при перекомпиляции. Хотя все в пределах стандарта. Это я к тому, что если есть возможность не использовать скользких свойств, то лучше их не использовать.
msguns (2005-10-26 12:40:00) [26]>Johnmen © (26.10.05 12:06) [8]
>А причём тут свойства RecNo и RecordCount???
Затем, что использовав их, можно не "тревожить" сервере и не заморачиваться с текстами запросов.
Тебе просто охота поспорить, ага ?
Johnmen (2005-10-26 12:06:00) [27]>msguns © (26.10.05 11:59) [7]
>Не вижу ничего плохого, а тем более предосудительного, в том, чтобы
>чисто на клиенте визуализировать порядковый номер и общее кол-во
>записей текущего курсора НД в тех случаях, где это удобно и полезно.
>Снабдив интерфейс соответствующим пояснением пользователю на этот
>счет.
А причём тут свойства RecNo и RecordCount???
>Еще раз напомню вечнуюмудрость: иногда лучше покашлять, чем сказать.
Вечны только глупость человеческая. И упрямство ;) (c) msguns © (26.10.05 11:59) [7]
:)))
msguns (2005-10-26 11:59:00) [28]>Johnmen © (26.10.05 11:25) [4]
>Истины бывают вечными. И не старятся...:)
Вечны только глупость человеческая. И упрямство ;)
>Desdechado © (26.10.05 11:33) [6]
>Двумя руками за!
Еще один !!!
>Ибо поведение разных видов датасетов для этих свойств разное, нюансы иногда меняются между версиями.
Ты имеешь в виду unidirectional ? Так не о них речь
>Поэтому при необходимости перехода от одного вида датасета к другому (привычки-то сохраняются!) возникают проблемы именно с этими свойствами.
У кого возникают ?
Не вижу ничего плохого, а тем более предосудительного, в том, чтобы чисто на клиентевизуализировать порядковый номер и общее кол-во записей текущего курсораНД в тех случаях, где это удобно и полезно. Снабдив интерфейс соответствующим пояснением пользователю на этот счет.
Еще раз напомню вечную мудрость: иногда лучше покашлять, чем сказать.
Desdechado (2005-10-26 11:33:00) [29]> Никогда и нигде не пользоваться RecNo и RecordCount !!!
Двумя руками за! Ибо поведение разных видов датасетов для этих свойств разное, нюансы иногда меняются между версиями. Поэтому при необходимости перехода от одного вида датасета к другому (привычки-то сохраняются!) возникают проблемы именно с этими свойствами.
йцукен (2005-10-26 11:31:00) [30]Спасибо
Обошелся через Bookmark и selectrows
Johnmen (2005-10-26 11:25:00) [31]>msguns © (26.10.05 11:18) [3]
>Опять за старое ?
Истины бывают вечными. И не старятся...:)
msguns (2005-10-26 11:18:00) [32]>Johnmen © (26.10.05 11:17) [2]
>Никогда и нигде не пользоваться RecNo и RecordCount !!!
Опять за старое ?
Johnmen (2005-10-26 11:17:00) [33]В том, что записи реально не получены клиентом.
Никогда и нигде не пользоваться RecNo и RecordCount !!!
Desdechado (2005-10-26 11:15:00) [34]RecNo для sql-серверов смысла не имеет, поэтому во многих датасетах просто не реализован
используй первичный ключ или суррогатное поле, имеющееся только в запросе