| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Внешнее соединение баз данных mdb |
| Автор: addet 7.2.2008, 11:14 |
| Доброе утро,господа программисты.Возникла небольшая проблемка.Необходимо слить базы mdb в одну (добавить записи, а не заменить).Все таблицы и поля в базах идентичны, за исключением внесенных данных.Подскажите пожалуйста как правильно написать запрос(с sql не очень дружу).Делаю в delphi на отдельной форме Выбор даты и кнопку Объединить все базы.Ислользую ADO |
| Автор: Rodman 7.2.2008, 12:34 |
| http://forum.vingrad.ru/index.php?show_type=forum&showtopic=174138&kw=%D0%BF%D1%80%D0%BE%D1%81%D1%82%D0%B5%D0%B9%D1%88%D0%B8%D0%B5-%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B-%D0%B1%D0%B0%D0%B7%D0%BE%D0%B9 в твоем случае у тебя будет 2 конекшина... с одно данные будешь брать, а при помощи второго добавлять... |
| Автор: ASGDeveloper 9.2.2008, 17:19 |
| ИМХО проще сделать так: 1) выбираем из первой таблицы все данные запросом вроде select * from имя_таблицы 2) запускаем цикл перебирающий все выбранные элементы и формируем скрипт вроде INSERT ... (тут перечисляем имена полей и значения) 3) выполняем сформированный в пункте 2 скрипт 4) берем следующую таблицу и дальше продолжаем с пункта 1 |
| Автор: addet 16.4.2008, 10:54 |
| Ребята не обижайтесь, на мою туповатость.А можно конкретный примерчик, ASGDeveloper, ? |
| Автор: Rodman 16.4.2008, 11:00 | ||
|
| Автор: Frees 16.4.2008, 11:49 | ||
| вот есть такая функция которая переберет все таблицы и запишет значение из одной базы в другую но тут надо осторожно с уникальнастями и первичными ключами
особо не проверял но вроде работала |
| Автор: Savek 16.4.2008, 11:51 | ||
Если структуры одинаковы, то можно перегнать одним запросом:
заодно и скорость имеем на несколько порядков выше |
| Автор: addet 16.4.2008, 12:53 |
| Frees, огромное спасибо за помощь. Пытаюсь сейчас немного переделать, чтоб не прописывать коннетк каждый раз, т..к. баз много.Что получится, отпишусь. |