![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 22.04.2008
Сообщений: 84
|
![]()
Скажите как правильно сформировать алгоритм по обмену данными между 2 одинаковыми базами (аксесс) но которые находятся на разных дисках.
Но условие такое , если запись с ID есть в обеих таблицах то обновление данных. Если ключ только в одной таблице то вставка записи. я тут пробовала делать так (может и коряво ... как умею) использую 2 ADOConnection для соединения с базами. Код:
|
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 11.07.2008
Сообщений: 91
|
![]()
Первый вопрос который напрашивается это - зачем вы это вообще делаете?
Если вторая база у вас служит, как бэкап первой базы, то не проще ли на физическом уровне скопировать ее (перед этим удалить предыдущий бэкап)? Если это не так, интересует как вы ведете согласование ID в двух таблицах? Код:
Второе: у вас получается так, если во второй табличке дата при первом не заполнена она у вас ни когда не проапдэйтится... Третье: если ли у вас какое то не соглашение в типах, либо плохо получается писать запросы делайте это через параметры (у вас 2 лишние операции одна переводит дату в строку, вторая переводит ее в дату)... Ну и последнее, если все же вторая табличка не является бэкапом я бы сделал примерно так: 1) в первой табличке добавил бы ее одно поле - признак того что записи в первой табличке нету во второй, сразу выбираются только те записи которые были еще не внесены, ну и соотв запоминать id вставленных записей чтобы не делать по ним апдэйт. 2) выбирать все записи (отбрасывая те записи по которым прошол инсерт) и сразу апдэйтить.... Или же сразу удаляются все записи со второй таблицы и происходит инсерт с первой во вторую... Последний раз редактировалось Mitriy08; 26.11.2008 в 22:20. |
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Обмен данными между С++ и С# | Stellvertreter | Общие вопросы C/C++ | 0 | 14.11.2008 14:18 |
Обмен данными между формами | Maks1978 | Общие вопросы C/C++ | 3 | 22.07.2008 15:35 |
из двух заданных массивов В и С одинаковой длины построить новый массив | Absent | Помощь студентам | 4 | 11.03.2008 21:38 |
Обмен данными по сети | Altera | Работа с сетью в Delphi | 2 | 23.02.2008 00:13 |
обмен данными с сервером | BioS | Работа с сетью в Delphi | 15 | 12.02.2007 15:32 |