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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.03.2011, 11:56   #1
sergey113
Форумчанин
 
Регистрация: 12.12.2007
Сообщений: 104
По умолчанию Часть данных не копируется -AppendRecord

Выполняю копирование данных из одной таблицы в другую. Использую код который привожу ниже. Почему-то при первом цикле перенеслось 592 строки, но перенеслось не все...При втором цикле добавилось еще 271 строка, но опять перенеслось не все..
ПОчему так происходит ? Метод AppendRecord не успевает отработать ?
Код:
procedure TForm1.Button3Click(Sender: TObject);
begin
ADOTable1.First;
  for h:=1 to ADOTable1.RecordCount do
  begin
        //speed:=ADOTable1.FieldByName('Knomber').Value ;
        //speed2:=ADOTable1.FieldByName('data_wyd').Value ;
        //ADOTable1.First;
              //for k:=1 to ADOTable1.RecordCount do
              //begin
              //ShowMessage('перед проверкой условия'+ADOTable1.FieldByName('Knomber').Value + ' ' + speed);
                  if  ADOTable1.FieldByName('wydana').Value = 'Нет' then
                  begin
                  ADOTable2.AppendRecord([nil,ADOTable1.FieldByName('fio'),ADOTable1.FieldByName('OtdUpr'),ADOTable1.FieldByName('otdel'),
ADOTable1.FieldByName('dolg'),ADOTable1.FieldByName('Knomber'),ADOTable1.FieldByName('data_wyd'),
ADOTable1.FieldByName('data_sda'),ADOTable1.FieldByName('wydana'), nil]);
                  ADOTable1.Delete;
                  end;
  ADOTable1.Next;
  end;
end;

Последний раз редактировалось sergey113; 18.03.2011 в 12:20.
sergey113 вне форума Ответить с цитированием
Старый 18.03.2011, 12:15   #2
asmodey1
Подтвердите свой е-майл
 
Регистрация: 19.12.2010
Сообщений: 808
По умолчанию

Во-первых, подправьте пост - добавьте пробелы после запятых в длинную строку - невозможно же читать !
Во-вторых - если делаете удаление, не делайте ADOTable1.Next... Вы же перескакиваете через запись !

Последний раз редактировалось asmodey1; 18.03.2011 в 14:05.
asmodey1 вне форума Ответить с цитированием
Старый 18.03.2011, 12:21   #3
sergey113
Форумчанин
 
Регистрация: 12.12.2007
Сообщений: 104
По умолчанию

Извените за неудобства. Поправил пост
Спасибо за помощь.
sergey113 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
AppendRecord дает ошибку с полем КОД sergey113 БД в Delphi 2 10.03.2011 13:14
Не копируется MDB файл через CopyFile artemavd Общие вопросы Delphi 4 02.12.2010 08:44
AppendRecord и Append novice2010 БД в Delphi 2 22.03.2010 08:12
Не копируется ! Что делать! Студент3000 Свободное общение 0 09.05.2009 09:22
в 1 книге копируется значение ячейки, номер которой каждый раз увеличивается на 1... Dr.Alex Microsoft Office Excel 2 29.10.2007 20:29