Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ado?


Lizerginnn ©   (2002-12-19 13:56:00) 

Господа! У меня следющая проблема.
Задача: слить данные из таблиц Paradox в Access (структура таблиц одинаковая.)
Решаю задачу следующим путём (если кто предложит другой более рациональный способ буду весьма благодарен :-)):
Выгружаю данные из парадокса в Query, затем подключаюсь к источнику данных ODBC, в цикле прогоняю Query и SQL-командой Insert вставляю данные (использую ExecSQL).
При использовании ADOQuery сгружается часть данных и возникает ошибка: что-то там насчёт нарушения уникальности. Провожу тоже самое используя BDE Query - всё нормально.
Вот код (извините что в C Builder)

for (int i=1;i<=5;i++)
{
Query1->Close();
Query1->SQL->Clear();
Query1->SQL->Add("select * from sh_0"+IntToStr(i)+"_02");
Query1->Open();
Query1->First();
while (!Query1->Eof)
{
ADOQuery1->Prepared = false;
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("insert into sheets (SheetID,CarID,DriverID,customerid,sheetnumber,leavefrombaseD,ReturnToBaseD,DinnerTime,InactiveTime,LeaveFromBase,ReturnToBase,ZeroDistance,ExtraAddValue,RateType1ID,RateType2ID,WorkDuration_r,AddReturnToBase) values (:sheetid,:carid,:driverid,:customerid,:sheetnumber,:leavefrombaseD,:ReturnToBaseD,:DinnerTime,:InactiveTime,:LeaveFromBase,:ReturnToBase,:ZeroDistance,:ExtraAddValue,:RateType1ID,:RateType2ID,:WorkDuration_r,:AddReturnToBase)");
ADOQuery1->DataSource = DataSource1;
ADOQuery1->Prepared = true;
ADOQuery1->ExecSQL();
Query1->Next();
}
}

Заранее благодарю за помощь.


Lizerginnn   (2002-12-19 15:25:00) [1]

Да я сделал уже через Query. Интересно просто из-за чего возникает ошибка при использовании ADOQuery.


Darlock   (2002-12-19 15:11:00) [2]

Тебе программно обязательно это делать, может быть DataPump подойдет?


Lizerginnn   (2002-12-19 14:59:00) [3]

Господа, неужели никто не знает?


Наверх

Титульная страница Поиск, карта сайта Написать письмо