Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
 Аватар для taras atavin
4226 / 1799 / 211
Регистрация: 24.11.2009
Сообщений: 27,562

Как определить, что запись последняя?

08.02.2010, 09:08. Показов 4670. Ответов 32
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть прилада с исходником (моя) и БД под аксесом, связь по ADO. В приладе есть много циклов перебора записей. Я перед циклом определяю, сколько в таблице всего строк, удовлетворяющих текущему фильтру, и юзю циклы со счётчиками. А как можно ещё? Можно ли в цикле while, не используя счётчик записей в какой бы то нибыло его форме, определить, является ли текущая запись последней? Как именно?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.02.2010, 09:08
Ответы с готовыми решениями:

Последняя запись в таблице - Row и Column - подскажите пожалуйста как ее определить
Последняя запись в таблице - Row и Column - подскажите пожалуйста как определить эти значения

Как определить, что ячейка таблицы в Ворд - последняя в строке?
Как определить, что ячейка таблицы в Ворд - последняя в строке?

Как сделать запись в реестр win7 64. В реестр попадает только последняя запись
Добрый вечер! Не могу сделать запись в реестр win7 64. Microsoft.Win32.RegistryKey hklm = Microsoft.Win32.Registry.LocalMachine; ...

32
Фрилансер
 Аватар для Black Fregat
3709 / 2083 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
08.02.2010, 15:08
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от oxotnik Посмотреть сообщение
Не надо подменять понятия. Я говорил о том что,
Где в Ваших постах хоть одно слово о представлении данных?
Только категорические утверждения о том, что перебор результатов запроса в цикле - ламерство..

Ну да ладно, будем считать, что это я плохо смотрел, неправильно понял.. Прошу прощения.

Цитата Сообщение от oxotnik Посмотреть сообщение
Для больших СУБД выгодней делать много мелких запросов, нежели один большой (на скорости клиента это отрицательно скажется, но на системе в целом - положительно).
А вот за это не могу не уцепиться. В примере сказано четко - 1000 записей. Для сервера большой СУБД выбрать что одну запись, что 1000 - примерно фиолетово. Большие запросы начинаются с величин, на пару порядков больше. Поэтому не вижу ни малейшего смысла строить тысячу запросов вместо одного.
0
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
08.02.2010, 15:27
Цитата Сообщение от Black Fregat Посмотреть сообщение
Где в Ваших постах хоть одно слово о представлении данных? Только категорические утверждения о том, что перебор результатов запроса в цикле - ламерство..
самое начало "спора":
Цитата Сообщение от oxotnik Посмотреть сообщение
то перебор записей на клиенте это самое распоследнее дело (особенно для отображения в виде таблицы).

Цитата Сообщение от Black Fregat Посмотреть сообщение
А вот за это не могу не уцепиться. В примере сказано четко - 1000 записей. Для сервера большой СУБД выбрать что одну запись, что 1000 - примерно фиолетово. Большие запросы начинаются с величин, на пару порядков больше. Поэтому не вижу ни малейшего смысла строить тысячу запросов вместо одного.
Пример абсолютно не показательный. При таком количестве данных что с циклом, что с отдельными запросами разница во времени выполнения будет доли сек. (в пользу большой выборки). Но, если привыкнуть так делать (пихать циклы, туда где можно обойтись запросом), то можно в конечном итоге наткнуться на грабли производительности системы в целом.
0
Фрилансер
 Аватар для Black Fregat
3709 / 2083 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
08.02.2010, 17:00
Цитата Сообщение от oxotnik Посмотреть сообщение
самое начало "спора": перебор записей на клиенте это самое распоследнее дело (особенно для отображения в виде таблицы)
Опять 25.. Сформулируйте, пожалуйста, четко: Вы в принципе признаете, что запросы, возвращающие много строк, могут быть уместны и даже необходимы? Собственно, за всеми вашими словами читается, что это вообще вредная фича. То есть, про обработку таблиц я и не пытаюсь спорить. Но зачем же делать такие грандиозные обобщения?

Цитата Сообщение от oxotnik Посмотреть сообщение
Но, если привыкнуть так делать (пихать циклы, туда где можно обойтись запросом), то можно в конечном итоге наткнуться на грабли производительности системы в целом.

Не по теме:

Да-да, а внутренние циклы неплохо бы переписать на ассемблере..

Часто Вы наступали на грабли производительности системы из-за объединения запросов в цикл?

Ладно, я смотрю, беседа становится неконструктивной.
0
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
08.02.2010, 17:11
Цитата Сообщение от Black Fregat Посмотреть сообщение
Вы в принципе признаете, что запросы, возвращающие много строк, могут быть уместны и даже необходимы?
Признаю. Более того, странно было бы если на каждую строку делался бы отдельный запрос.
Цитата Сообщение от Black Fregat Посмотреть сообщение
Собственно, за всеми вашими словами читается, что это вообще вредная фича.
Еще раз повторюсь (опять 25...). Делать обработку данных в цикле, только для того что бы отобразить эти данные в таблице - моветон. Для примера что я считаю моветоном: Есть куча запросов (или один большой) построенный таким образом что стандартный TDBGrid не может его отобразить, так как хочется. В результате отказываемся от TDBGrid в пользу TStringGrid, и начинаем бегать по результатам запроса(ов), заполняя сетку, так как нам хочется.
Цитата Сообщение от Black Fregat Посмотреть сообщение
Но зачем же делать такие грандиозные обобщения?
Все обобщения сводятся к отображению данных в табличном виде.
Цитата Сообщение от Black Fregat Посмотреть сообщение
Часто Вы наступали на грабли производительности системы из-за объединения запросов в цикл?
Было пару раз, делал систему раскроя материалов на основе циклов, потом ТЗ поменялось и раскрой пришлось ждать пару часов, тогда как SQL-ем это делалось за пару сек.
1
Фрилансер
 Аватар для Black Fregat
3709 / 2083 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
08.02.2010, 17:16
Спасибо, с такими формулировками полностью согласен.
0
 Аватар для taras atavin
4226 / 1799 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
09.02.2010, 04:36  [ТС]
Цитата Сообщение от oxotnik Посмотреть сообщение
уж если их сумели отобрать, то и операции над ними не проблема сделать.
Одно из другого не следует. Может я из БД читаю план полного факторного вычислительного эксперимента на модели свободно-вынужденной тепломагнитной гидродинамики? На сиквэле она нереализуема при том, что это обработка. Ладно бы пиэлсиквэл, он хоть процедурный, но хорошую модель свободно-вынужденной и на процедурном языке (любом) несколько лет будешь делать, если вообще сделаешь.
0
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
09.02.2010, 09:11
Цитата Сообщение от taras atavin Посмотреть сообщение
план полного факторного вычислительного эксперимента на модели свободно-вынужденной тепломагнитной гидродинамики?
понял только слово "план"...
0
 Аватар для taras atavin
4226 / 1799 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
09.02.2010, 11:17  [ТС]
Цитата Сообщение от oxotnik Посмотреть сообщение
для представления данных в виде таблицы
Какой именно? Таблица аксеса имеет поля: День недели, номер пары, возможность планирования на данное время. Нука напиш8и запрос, который время пары расставит в заголовках столбцов!

Добавлено через 1 минуту
Цитата Сообщение от oxotnik Посмотреть сообщение
понял только слово "план"...
, а критикуешь мои знания.

Добавлено через 2 минуты
Цитата Сообщение от oxotnik Посмотреть сообщение
если на каждую строку делался бы отдельный запрос
. У меня такой интерфейс связанных таблиц, что иногда и это востребовано, но по таким выборка си сами не ходят, всё свалено на компоненты.
0
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
09.02.2010, 11:40
Цитата Сообщение от taras atavin Посмотреть сообщение
Какой именно? Таблица аксеса имеет поля: День недели, номер пары, возможность планирования на данное время. Нука напиш8и запрос, который время пары расставит в заголовках столбцов!
а) Я не знаю задачу в целом, поэтому:
б) Я не исключаю что архитектура БД не до конца продумана
г) на "слабо" не ведусь, и "ну ка напиши" - за отдельную плату.

Цитата Сообщение от taras atavin Посмотреть сообщение
, а критикуешь мои знания.
если бы я критиковал твои знания в области ядерной физики или литературы 19 века, то замечание было бы уместно, а так, тут форум программистов, и знания по программированию критикуются, тем более что это не критика, а так "заметки на полях"
Цитата Сообщение от taras atavin Посмотреть сообщение
У меня такой интерфейс связанных таблиц, что иногда и это востребовано, но по таким выборка си сами не ходят, всё свалено на компоненты.
архитектуру БД посмотри внимательно, может и найдешь способ уйти от циклов.

ЗЫ: я вовсе не призываю отказаться от циклов как от атавизма программирования, все что было мной выражено на 3-х станицах этой темы это личное ИМХО (попытался привести доводы в виде скорости работы софта и его модификации/расширяемости). Если с циклами работает и это устраивает, то пусть работает.
0
 Аватар для taras atavin
4226 / 1799 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
10.02.2010, 07:05  [ТС]
Цитата Сообщение от oxotnik Посмотреть сообщение
если бы я критиковал твои знания в области ядерной физики или литературы 19 века, то замечание было бы уместно, а так, тут форум программистов
Вот именно. А ты обладаешь такими малыми знаниями, что даже не способен понять класс задач, для которых сиквел не тянет обработку, но берёшься критиковать мои знания самого сиквэла только на том основании, что я юзю циклы после сиквэла. Я бы ещё понял, если бы основанием для критики был запрос на сиквэле, по которому сразу видно, что обрабатываться он будет в десятеро дольше, чем если его переписать. Или если бы ты конкретную задачу не только понял, но и за 5 минут решил на одном сиквэле, а я бы спросил, как оптимизировать решение на сях. А так, критиковать надо тебя. Кстати, при выборе язка для решения каждой задачи следует учитывать не только время исполнения, но и время разработки и объём кода. Представь себе ещё боле дикую ситуацию, в возможности которой я, кстати, сам очень сомневаюсь, но всё же: на сях прога пишется за месяц, исполняется за час, а на сиквэле исполняться будет терцию, но писаться тысячу лет. Тогда выбор сиквэла говорит о не знании сей и нежелании их изучать. По моей задаче соотношение времени разработки скромнее, но в пользу сей. И это только по обработке. А по переофомлению таблицы из реляционной в ортоганальную? Даже если ты это на сиквэле сделаешь, такое решение будет полным извратом не зависимо ни от времени разработки, ни от времени исполнения, а по той лишь причине, что сиквэл для этого не предназначен. И платить за такую глупость я не намерен. Таблица самого расписания, кстати, вообще должна выводится с объединением ячеек, для чего ни один поддерживающий сиквэл компонент не годен, а если нет возможности юзить готовые компоненты, поддерживающие сиквэл, то придётся при отображении перебирать записи. Друго пути нет.
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
10.02.2010, 09:06
oxotnik, taras atavin, давайте знания и прочие достоинства друг друга вы будете выяснять не в теме...
0
 Аватар для oxotnik
1665 / 1134 / 80
Регистрация: 21.08.2008
Сообщений: 4,734
Записей в блоге: 1
10.02.2010, 09:24
Lord_Voodoo,согласен, договоримся на то что у него толще, а у меня длиннее
0
0 / 0 / 0
Регистрация: 13.06.2009
Сообщений: 7
27.04.2010, 00:43
Зелей базу
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.04.2010, 00:43

Определить правда ли, что первая и последняя цифры числа 2^N в сумме больше чем N
Ввести натуральное N, определить правда ли, что первая и последняя цифры числа 2^N в сумме больше чем N (возведение в степень...

Дано число. Определить, верно ли, что сумма его чисел больше m и последняя цифра равна Y
дано число. верно ли что сумма его чисел больше m и последняя цифра равна Y <script> var n=prompt("Введите число ",10); ...

Как узнать, что в DbGridEh выделена последняя строка?
Здравствуйте. Подскажите пожалуйста как узнать что в DBGrideh выделенная последняя строка. а то есть если edit1.text=последней строки...

Последняя запись
Помогите пож. разобраться c запросом! Необходимо найти в таблице последнюю запись с наличием буквы "с" в слове. Пробовал так:...

Последняя запись
Всем привет. Хочу сделать проверку на последнюю запись, то есть нажимаем на кнопку запись выводятся записи из бд по запросу. Но как только...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
33
Ответ Создать тему
Новые блоги и статьи
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности. Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/ TL DR Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru