Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.04.03;
Скачать: [xml.tar.bz2];

Вниз

Передача данных из одной БД в другую (IB5.6)   Найти похожие ветки 

 
Мария В.   (2003-03-12 11:09) [0]

Люди, помогите!
Нужно каждый день добавлять данные из таблицы в одной БД в аналогичную таблицу в другой БД. Работаем с InterBase 5.6 через BDE, алиасы у баз естественно разные. Таблицы оч-чень большие. Самый простой способ - открыть запросом исходную таблицу и, двигаясь по ней, insert-ами добавлять записи в таблицу-приемник - работает крайне медленно. Просто клиническая смерть!
Может кто-нибудь знает способ побыстрее - напишите, пожалуйста.
Заранее спасибо.


 
Юрий Жуков   (2003-03-12 12:44) [1]

Э-эх
Делаешь скрипт типа
Insert into ....
// повторить не меньше 1000 раз мона и болеее

commit;

Читай доку по работе с IB


 
MsGuns   (2003-03-12 13:04) [2]

BatchMove решит ваши проблемы. То же, в принципе, что и Юрий Жуков © (12.03.03 12:44), только не надо страдать, ручками стряпая запросы.


 
Wellslava   (2003-03-12 13:18) [3]

напиши другую прогу, и с помощью компонента BatchMove (страница Data Access)передавать данные... он работает пакетно, поэтому намного быстрее запросов.


 
Юрий Жуков   (2003-03-12 13:46) [4]

2Wellslava: А что значит работает пакетно? IB, как я понимаю, фиолетово как работает BatchMove вкупе с BDE. Я особо не вкурсе позволяет ли сам IB городить гетерогенные(в смысле между базами) запросы. Это был бы самый быстрый вариант.


 
zacho   (2003-03-12 13:49) [5]


> позволяет ли сам IB городить гетерогенные(в смысле между
> базами) запросы

Насколько помню - нет.


 
y-soft   (2003-03-12 13:49) [6]

Сам IB гетерогенные запросы не позволяет. Позволяет лишь делать двухфазный коммит


 
Wellslava   (2003-03-12 14:47) [7]

Юрий Жуков: Я имел ввиду, что он берет все данные оптом переносит их в другую таблицу, минуя все триггеры и генераторы, поэтому в принципе потом надо обновлять генераторы... По крайнер мере я так делал, и довольно быстро все передавалось... (быстрее запросов на Insert)


 
alexvan   (2003-03-12 15:21) [8]

Господа! У меня аналогичная тема. Только поэтому влезаю сюда. Я согласен что BatchMove это удобнее и быстрее как через компонент, так и через Table.BatchMove(). Но у меня прабла в том, что таблицы с другой машины к себе закачиваю без каких либо проблем, а вот для того чтобы их передать обратно-уже проблема. Насколько я помню функция BatchMove возвращает количество записей? А у меня ни фига. Хотя таблы не пустые. И BatchMove.Mode:=batCopy. Подскажите, кто с этим сталкивался.


 
Юрий Жуков   (2003-03-12 16:11) [9]

2Wellslava: ошибаешься. BatchMove никак не отключает триггеры и констраинты в IB. Ктстати а ведь отключение триеггров и констраинтов приведет должно действительно привести к ускорению на больших объемах.


 
Мария В.   (2003-03-13 16:53) [10]

Всем спасибо!
BatchMove несколько ускорил дело. Триггеров и констреинтов у этой таблицы нет, но мысль полезная.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.04.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.01 c
8-6612
demonastarot
2002-12-27 10:11
2003.04.03
MediaPlayer


4-6834
zedov
2003-02-01 14:40
2003.04.03
запихнуть dll в эксешник без формы


14-6793
Портвейн
2003-03-18 02:56
2003.04.03
жена и ООП


3-6412
sammy
2003-03-16 10:20
2003.04.03
Помогите со структурой таблицы Access


14-6678
CanBlow
2003-03-18 13:50
2003.04.03
Алгоритм





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский