Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
NikProg
Member

Откуда:
Сообщений: 8
Доброго дня!

Имеется следующая ситуация.
Есть одна БД, реализованная на ACCESS.
Есть два пользователя, работающих с этой БД. Работу они ведут с локальными экземплярами ввиду отсутствия возможности подсоединяться к БД через сеть.
Пользователи вносят информацию, входящую только в их зону ответственности, но необходимую для использования обеими сторонами.

Проблема состоит в переносе данных от одного пользователя к другому, чтобы БД всегда была актуальна для обоих.
Подскажите, пожалуйста, наиболее оптимальное решение данной проблемы, учитывая, что обмен может осуществляться только через MS OUTLOOK, при этом файл не может превышать 6Мб.
29 окт 18, 14:26    [21718016]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 4972
Еще нужна версия аксеса
29 окт 18, 14:30    [21718024]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
NikProg
Member

Откуда:
Сообщений: 8
MS ACCESS 2013
29 окт 18, 14:46    [21718045]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 4972
NikProg, репликация осталась за бортом, если, конечно, вы не запускаете в 2013 каую нибудь стару версию софта в режиме совместимости.
Остаются только самописные варианты обмена файлами.
29 окт 18, 14:49    [21718048]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
alecko
Member

Откуда: Башкирия
Сообщений: 453
NikProg, обзовите базы с данными по разному, синхронизируйте раз свои таблицы у каждой базы, да кидайте в папку новые базы, присылаемые по почте взамен установленной.
29 окт 18, 15:02    [21718063]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
NikProg
Member

Откуда:
Сообщений: 8
alecko, это вариант для хороший, но размер БД больше 6Мб...
29 окт 18, 15:05    [21718074]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
Tarasios
Member

Откуда: Украина
Сообщений: 403
NikProg
alecko, это вариант для хороший, но размер БД больше 6Мб...

а что, архивирование уже не в моде?
Базы Акса изумительно сжимаются, примерно раз в 10
29 окт 18, 15:33    [21718122]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
NikProg
Member

Откуда:
Сообщений: 8
Tarasios, даже если так, это подразумевает лимит на объем.
29 окт 18, 15:52    [21718149]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 4972
NikProg
Tarasios, даже если так, это подразумевает лимит на объем.


Придется экспорт - импорт файлов писать.
Каждому "филиалу" надо будет выделить диапазон уникальных кодов, чтобы они не пересекались и по ним импортировать-экспортировать данные. Достаточно просто должно выйти - если таблиц для обменя немного.
29 окт 18, 16:12    [21718166]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
vmag
Member

Откуда: MP
Сообщений: 3138
NikProg,

самый первый вопрос - пользователи пишут в одну таблицу или в разные?
Если в одну, то ключ там счетчик или как?
29 окт 18, 16:16    [21718173]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
NikProg
Member

Откуда:
Сообщений: 8
vmag,
vmag
NikProg,

самый первый вопрос - пользователи пишут в одну таблицу или в разные?
Если в одну, то ключ там счетчик или как?


Пользователи заполняют разные таблицы
29 окт 18, 16:50    [21718202]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
vmag
Member

Откуда: MP
Сообщений: 3138
NikProg,

Вот уже экономия, можно эти таблицы вынести в отдельные хранилища и туда сюда гонять только их...
29 окт 18, 16:58    [21718210]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
vmag
Member

Откуда: MP
Сообщений: 3138
NikProg,

Ну и честно говоря вот это
NikProg
учитывая, что обмен может осуществляться только через MS OUTLOOK, при этом файл не может превышать 6Мб.

и вот это
NikProg
Tarasios, даже если так, это подразумевает лимит на объем.

как бы друг друга исключают...

Вам нужно за три копейки сделать хоть на своем хостинге хоть на чужом простенькую бд на MySql с такими же табличками и делать обмен через них, отвязавшись от аутлука на совсем...

Когда нужно пользователи подключаются, отдают свое и забирают чужое хоть принудительно хоть по расписанию, хоть так и эдак...
29 окт 18, 17:07    [21718217]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 4972
vmag
NikProg,

Ну и честно говоря вот это
NikProg
учитывая, что обмен может осуществляться только через MS OUTLOOK, при этом файл не может превышать 6Мб.

и вот это
NikProg
Tarasios, даже если так, это подразумевает лимит на объем.

как бы друг друга исключают...

Вам нужно за три копейки сделать хоть на своем хостинге хоть на чужом простенькую бд на MySql с такими же табличками и делать обмен через них, отвязавшись от аутлука на совсем...

Когда нужно пользователи подключаются, отдают свое и забирают чужое хоть принудительно хоть по расписанию, хоть так и эдак...


а как вы собираетесь данные в mysql записывать?
29 окт 18, 17:13    [21718225]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
vmag
Member

Откуда: MP
Сообщений: 3138
Озверин
а как вы собираетесь данные в mysql записывать?


Не понял вопрос... Вы считаете что это невозможно ?
29 окт 18, 17:17    [21718230]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
Прогер_самоучка
Member

Откуда:
Сообщений: 67383
Озверин
vmag
NikProg,

Ну и честно говоря вот это
пропущено...

и вот это
пропущено...

как бы друг друга исключают...

Вам нужно за три копейки сделать хоть на своем хостинге хоть на чужом простенькую бд на MySql с такими же табличками и делать обмен через них, отвязавшись от аутлука на совсем...

Когда нужно пользователи подключаются, отдают свое и забирают чужое хоть принудительно хоть по расписанию, хоть так и эдак...


а как вы собираетесь данные в mysql записывать?
точно также, как и отправлял бы через оутлук.
29 окт 18, 17:18    [21718232]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 4972
vmag
Озверин
а как вы собираетесь данные в mysql записывать?


Не понял вопрос... Вы считаете что это невозможно ?


то решение, которое я себе набросал - проблемное и трудоемкое. Обмен данными через аутлук - довольно прост. А я имел ввиду, как вы видите обмен данными с базой mysql, которая располагается на хостинге.
29 окт 18, 17:21    [21718233]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 4972
Прогер_самоучка
Озверин
пропущено...


а как вы собираетесь данные в mysql записывать?
точно также, как и отправлял бы через оутлук.


это такой тонкий троллинг?
29 окт 18, 17:22    [21718234]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
vmag
Member

Откуда: MP
Сообщений: 3138
Озверин
Обмен данными через аутлук - довольно прост. А я имел ввиду, как вы видите обмен данными с базой mysql, которая располагается на хостинге.


Исходя из перспективы - нет больше аутлука...
но есть локальная таблица и такая же подключенная через ODBC на сервере...
Трудно вычислить ключи которых нет в таблице назначения и добавить соответствующие записи из таблицы источника?

Да море решений, в том числе и с аутлуком и 6 метров будет хватать с головой, достаточно тупо на каждой стороне вести протокол изменений и высылать только ключи новых или измененных записей, на принимающей стороне достаточно удалить в локальной БД все ключи партнера и записать новые записи из MYSQL соответствующие высланным ключам (там будет все и корректировка и новые и удаленные)

Честно говоря ваш вопрос КАК при условии что у пользователей разные таблицы и они никак не пересекаются по вводу данных - был лишним...
29 окт 18, 17:41    [21718246]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 4972
vmag, что за перспектива то?
Работа с данными в аксе через odbc - такое себе удовольствие. И чем больше данных в таблицах, тем сомнительнее удовольствие.
У нас, к примеру, прилинкованы таблицы из постгрt, правда сервак то находится внутри сети - скорость чтения\вставки, скажу сразу - очень печальная.

Ускорение всего этого дела пошло по 2м путям:
-работа напрямую с базой через ADO
-вспомогательные сервисы(у нас - java) , через которые и осуществлялся обмен данными.


Если мы говорим о работе через ADO , то пакетная вставка данных сразу идет лесом, вставить же много записей напрямую в таблицу, да еще линованную (через dsn, само собой) из внешней сети - в Ms Access может причинять очень много боли.

Если же мы говорим о сервисах - то это как раз оверхед по сравнению с обычными txt файлами, которыми можно обмениться через outlook.


p.s. По-моему, вы слегка агрессивно настроены, расслабьтесь - я лишь делюсь информацией.
29 окт 18, 17:51    [21718254]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
vmag
Member

Откуда: MP
Сообщений: 3138
Озверин
vmag, что за перспектива то?

NikProg
....даже если так, это подразумевает лимит на объем.

Озверин
Работа с данными в аксе через odbc - такое себе удовольствие. И чем больше данных в таблицах, тем сомнительнее удовольствие.

Это не онлайн работа, ее никто и не предлагает... можно нажать кнопку в конце дня и пока меняешь туфли все закончится...
В интернете много сравнений постге с мускулем, в этом отношении первый гораздо продвинутей по сравнению со вторым ибо он прямой конкурент ораклу, зато второй (мускуль) гораздо проше и шустрее, именно в этом разрезе работы.

Решение с txt файлами тоже нормальное решение, никто не спорит, но в этом случае тоже есть смысл гонять туда - сюда только изменения, дабы не упереться в 6 метров, в принципе наверное это и можно выдать как предложение ТС у:
1. У хозяев таблиц ключи могут быть счетчиками.
2. У пользователей счетчики изменить на обычные ключи (типа длинное целое)
3. Хозяин высылает полный протокол изменений (новые + измененные + удаленные)
- ключ
-первое поле
....
- последнее поле
4. На принимающей стороне все записи с присланными ключами удаляются и грузятся из txt по новой...
причем ключи будут совпадать...
Для более продвинутых можно в строке в конце писать признак типа (1- это новая, 2- изменения, 3- удаление) и соответственно обрабатывать как положено каждую запись...

Озверин
p.s. По-моему, вы слегка агрессивно настроены,


Вам показалось...
29 окт 18, 18:26    [21718291]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 4833
А может проще перейти на облачные технологии?

А вообще для полного ответа надо смотреть структуру базы, какие таблицы заполняются,, какие есть служебные поля (или самим их вводить)

У меня есть задача - заполнение базы данных по объектам строительства. Часть застройщиков присылают бумажные анкеты, часть заполняют в электронных модулях (базах Access, которые я для них формирую). И возникает проблема согласования со связями, счётчиками и т.п. того, что ввели с анкет и того, что прислали в модулях.

Проблема решена следующим образом. Есть основная база, куда всё вводится. Для переменных частей (объектов) введёно дополнительное поле-идентификатор, которое рассчитывается по определённому правилу, добавлен признак объекта (новый или уже существующий в базе) - это влияет на алгоритм обработки при загрузке данных.

После ввода и согласования данных из базы вырезается кусок, относящийся к конкретному застройщику с актуальной информацией. Эта система функционирует около 5 лет. Поначалу были проблемы с назначением и определением идентификаторов, но сейчас никаких проблем нет.

С основной базой работают 6 операторов плюс подгружают данные около 60 модулей.
30 окт 18, 11:28    [21718733]     Ответить | Цитировать Сообщить модератору
 Re: Лучшее решение для обмена изменениями в БД (MS ACCESS)  [new]
vmag
Member

Откуда: MP
Сообщений: 3138
Joss
А может проще перейти на облачные технологии?


Да как угодно можно, пользователи по вводу не пересекаются, синхронизация баз не нужна, можно просто таблицы пользователя 1 положить в отдельное хранилище типа User1, а таблицы пользователя 2 положить в хранилище User2 и закинуть на общий Яндекс или Гугл диск, будет синхронизация на уровне файлов
30 окт 18, 16:41    [21719221]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить