![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перенос записей из DBF в IB [D5, IB6.x]
Sveta © (2003-11-06 08:46:00)
Подскажите как наиболее эффективно перенести записи из DBF в БД IB через FIB+ БД порядка 2.000.000
HSolo (2003-11-06 12:41:00) [1]
5. Не коммитить после каждого insert-а
Zacho (2003-11-06 12:06:00) [2]
> Sveta (06.11.03 11:33) [4]
> А программно
> орзанизуя цикл (FIBDATASET.INSERTRECORD(....)), получается
> очень долго, причем со временем процесс замедляется.
1. Для вставки данных в таблицы IB используйте или компаненты, не организующие кэш данных (TIBSQL в IBX, как называется подобный в FIBPlus уже не помню), или ставьте UniDirectional:=true;
2. Добавляйте данные запросом с параметрами, перед первым выполнением запроса сделайте Prepare, в дальнейшем только меняйте значение параметров.
3. На время импорта данных отключите все триггера, индексы, ограничения.
4. Может и упустил еще что-нибудь, другие подскажут.
> Если есть возможность указания перекодировки в DATAPump
Есть. Для базы на IB создайте алиас, и укажите в нем LANGDRIVER Pdox ANSI Cyrillic
Sveta (2003-11-06 11:33:00) [3]
у базы DBF кодировка символов DOS"ая(FOXPRO 2.5). А программно орзанизуя цикл (FIBDATASET.INSERTRECORD(....)), получается очень долго, причем со временем процесс замедляется. Если есть возможность указания перекодировки в DATAPump, то подскажите, буду очень благодарна.
Term (2003-11-06 09:47:00) [4]
а в чом проблема, если не хочеш DataPump, то в приложении положи компоненты для доступа к DBF и IB и пусть льют тогда один в другой, запусти прогу, и сходи попить кофе с тортиком :))
если кофе много и торт большой, то как раз по времени всё совпадёт
Sveta (2003-11-06 09:21:00) [5]
Нужно программно
Жук (2003-11-06 08:49:00) [6]
DataPump