Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.03.2015, 13:02   #1
dualtrey
Пользователь
 
Регистрация: 11.01.2015
Сообщений: 20
По умолчанию While NOT IBQuery.Eof не работает

Здравствуйте, помогите, пожалуйста, разобраться с циклом. Мне необходимо скопировать все записи таблицы и вставить их в нее же с изменением значений некоторых полей. Использую While NOT IBQuery.Eof
но вставляется в итоге только одна запись - первая. Что не так в коде? Eof не работает? Уже голову сломал.
Код:
Eof.jpg
dualtrey вне форума Ответить с цитированием
Старый 02.03.2015, 13:06   #2
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

Зачем тут весь этот с позволения сказать код?
lomastr_ вне форума Ответить с цитированием
Старый 02.03.2015, 13:17   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Что не так в коде?
Append - запись в конец набора
Next - сразу Eof
Цитата:
Eof не работает?
Работает
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 02.03.2015, 15:37   #4
dualtrey
Пользователь
 
Регистрация: 11.01.2015
Сообщений: 20
По умолчанию

Цитата:
Сообщение от lomastr_ Посмотреть сообщение
Зачем тут весь этот с позволения сказать код?
Если это вопрос, то я написал зачем. Если это насмешка, покажи как можно сделать лучше.
dualtrey вне форума Ответить с цитированием
Старый 02.03.2015, 15:39   #5
dualtrey
Пользователь
 
Регистрация: 11.01.2015
Сообщений: 20
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Append - запись в конец набора
Next - сразу Eof
Работает
А на что заменить Append? Insert, например, выдает тот же результат.
dualtrey вне форума Ответить с цитированием
Старый 02.03.2015, 15:45   #6
Fleg
 
Регистрация: 24.05.2011
Сообщений: 3
По умолчанию

могу ошибаться, но по моему eof работает правильно. смотрите Вы добавили новую запись (Append) сохранили изменения (Post) находитесь в на последней записи запроса пробуете перейти на следующую запись (которой нет), поэтому выходите из цикла. сделайте все тоже самое, только записи добавляйте не Query1, а другим запросом, например, Query2.
Fleg вне форума Ответить с цитированием
Старый 02.03.2015, 16:29   #7
lomastr_
Форумчанин
 
Регистрация: 16.01.2015
Сообщений: 672
По умолчанию

Цитата:
как можно сделать лучше
например 1 запросом, раз и готово
lomastr_ вне форума Ответить с цитированием
Старый 02.03.2015, 17:21   #8
dualtrey
Пользователь
 
Регистрация: 11.01.2015
Сообщений: 20
По умолчанию

Цитата:
Сообщение от lomastr_ Посмотреть сообщение
например 1 запросом, раз и готово
Сестра таланта а код?
dualtrey вне форума Ответить с цитированием
Старый 02.03.2015, 17:23   #9
dualtrey
Пользователь
 
Регистрация: 11.01.2015
Сообщений: 20
По умолчанию

Цитата:
Сообщение от Fleg Посмотреть сообщение
могу ошибаться, но по моему eof работает правильно. смотрите Вы добавили новую запись (Append) сохранили изменения (Post) находитесь в на последней записи запроса пробуете перейти на следующую запись (которой нет), поэтому выходите из цикла. сделайте все тоже самое, только записи добавляйте не Query1, а другим запросом, например, Query2.
Пробовал insert тоже самое, с двумя квериками получились пустые записи, но количество совпадает, поколдую еще. Спасибо Вам за совет.
dualtrey вне форума Ответить с цитированием
Старый 02.03.2015, 18:06   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
вставить их в нее же с изменением значений некоторых полей.
Оффтоп: Неудачная идея, особенно учитывая наличие аналитических функций современных СУБД.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чтение из БД (IBQuery) Harikolo БД в Delphi 4 30.10.2010 15:15
Подскажите как работает eof()[Console C++] sawer5 Помощь студентам 3 01.01.2010 12:11
Filter в IBQuery Yurk@ БД в Delphi 3 23.01.2009 23:26