Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.12.2012, 13:17   #11
gbolgov
 
Регистрация: 26.03.2011
Сообщений: 9
По умолчанию

подскажите как убрать восклицательные значки в запросах access

gbolgov вне форума Ответить с цитированием
Старый 09.12.2012, 16:17   #12
Андрэич
Форумчанин
 
Аватар для Андрэич
 
Регистрация: 20.05.2012
Сообщений: 311
По умолчанию

Цитата:
Сообщение от gbolgov Посмотреть сообщение
подскажите как убрать восклицательные значки в запросах access
А зачем, мешают?
Андрэич вне форума Ответить с цитированием
Старый 13.12.2012, 00:05   #13
DREDUA
 
Регистрация: 12.12.2012
Сообщений: 6
Плохо Обработка транзакции в запросе

Доброго времени суток!
Может кто подскажет, как решить проблему с корректной отработкой запроса.
Используется DoCmd.RunSQL strSQL, естественно запрос на изменение или добавление записей.
Запрос запускается на клиенте, база на сервере(схема файл-сервер).
Обработка базы выполняется несколькими запросами подряд.
Проблема, иногда один или несколько запросов выполняется иногда нет.
Если поставить значение UseTransaction=TRUE, то ситуация не решается так как один из запросов может не выполниться и откатится из-за невыполненной транзакции, а необходимо выполнение всех запросов в обязательном порядке или не выполнение то же всех.

Спасибо за помощь.
DREDUA вне форума Ответить с цитированием
Старый 13.12.2012, 00:36   #14
Myhaylo
Форумчанин
 
Регистрация: 19.07.2012
Сообщений: 520
По умолчанию

Очень сложно понять проблему...
Например, что значит "один или несколько запросов выполняется иногда нет"? Ошибка возникает или запрос не возвращает записей?
Может быть, Вам сначала проверять наличие записей в соответствующих запросах на выборку, а далее - запускать запросы на обновление?
Окупант, руки прочь от Украины!!! Слава Героям!
Myhaylo вне форума Ответить с цитированием
Старый 13.12.2012, 02:37   #15
DREDUA
 
Регистрация: 12.12.2012
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Myhaylo Посмотреть сообщение
Очень сложно понять проблему...
Например, что значит "один или несколько запросов выполняется иногда нет"? Ошибка возникает или запрос не возвращает записей?
Может быть, Вам сначала проверять наличие записей в соответствующих запросах на выборку, а далее - запускать запросы на обновление?
Почему сложно?
Есть таблицы на файл-сервере.
Нужно добавить данные из одних таблиц в другие таблицы, повторюсь файл-база на сервере.
Проблема! В результате или сбоя или перегруза сетки или еще по каким то причинам, происходит иногда частичное изменение (добавление) записей в таблицы, иногда не полностью, а иногда полностью(как карта ляжет). Появляются рванные записи или нарушается целостность данных из-за потерянных записей.
При выполнении локально, все происходит быстро и без проблем. Все проблема в обработке данных по сетке.
НЕОБХОДИМО без ошибок в полном объеме выполнение изменений на удаленной базе сервера.

Но случае ошибки данные по выполненным уже запросам все равно частично уже будут изменены. В случае отката нужно откатывать все изменения всех запросов то есть всех измененных таблиц, а не одной.
А если еще к тому же запрос по которому будет откат будет последним в списке выполнения....

Последний раз редактировалось DREDUA; 13.12.2012 в 17:18.
DREDUA вне форума Ответить с цитированием
Старый 16.12.2012, 21:55   #16
DREDUA
 
Регистрация: 12.12.2012
Сообщений: 6
По умолчанию

Цитата:
Сообщение от DREDUA Посмотреть сообщение
НЕОБХОДИМО без ошибок в полном объеме выполнение изменений на удаленной базе сервера.
Неужели никто не сталкивался с подобной проблемой?
Ладно буду искать выход...
DREDUA вне форума Ответить с цитированием
Старый 17.12.2012, 22:49   #17
Андрэич
Форумчанин
 
Аватар для Андрэич
 
Регистрация: 20.05.2012
Сообщений: 311
По умолчанию

Цитата:
Сообщение от DREDUA Посмотреть сообщение
Почему сложно?
Есть таблицы на файл-сервере.
Нужно добавить данные из одних таблиц в другие таблицы, повторюсь файл-база на сервере.
Проблема! В результате или сбоя или перегруза сетки или еще по каким то причинам, происходит иногда частичное изменение (добавление) записей в таблицы, иногда не полностью, а иногда полностью(как карта ляжет). Появляются рванные записи или нарушается целостность данных из-за потерянных записей.
При выполнении локально, все происходит быстро и без проблем. Все проблема в обработке данных по сетке.
НЕОБХОДИМО без ошибок в полном объеме выполнение изменений на удаленной базе сервера.

Но случае ошибки данные по выполненным уже запросам все равно частично уже будут изменены. В случае отката нужно откатывать все изменения всех запросов то есть всех измененных таблиц, а не одной.
А если еще к тому же запрос по которому будет откат будет последним в списке выполнения....
1. Выполнять из кода запрос(ы) с параметром dbfailonеrror
2. Transaction (буквальный перевод "сквозь сделанное"): выполняются (из VBA, например) всё нужные запросы, только если они выполнились все

Последний раз редактировалось Андрэич; 17.12.2012 в 22:53.
Андрэич вне форума Ответить с цитированием
Старый 18.12.2012, 12:27   #18
gluk_fm
Форумчанин
 
Аватар для gluk_fm
 
Регистрация: 09.06.2011
Сообщений: 515
По умолчанию

Добрый день.
Когда-то на предыдущей работе сталкивался с подобной проблемой (сеть и накат обновлений когда вздумается ИТ), после тчетных попыток "договорится" с ИТ принял решение:
1. Создаётся архив (перед отработкой процедур)
2. Переносится существующая база на локальный компьютер
3. Обрабатывается (выполняются процедуры)
4. Создана таблица с результатами выполнения
5. Если выполнено - то производится сжатие востановление и выносится обратно на сетевой ресурс, если нет то повторяется процедура без содания архива (количество повторов советую ограничить)

Все кода для копирования архивации есть на этом форуме, по моему я даже когда-то вылаживал базу (не уверен!)
gluk_fm вне форума Ответить с цитированием
Старый 18.12.2012, 17:49   #19
DREDUA
 
Регистрация: 12.12.2012
Сообщений: 6
По умолчанию

Цитата:
Сообщение от gluk_fm Посмотреть сообщение
Добрый день.
Когда-то на предыдущей работе сталкивался с подобной проблемой (сеть и накат обновлений когда вздумается ИТ), после тчетных попыток "договорится" с ИТ принял решение:
1. Создаётся архив (перед отработкой процедур)
2. Переносится существующая база на локальный компьютер
3. Обрабатывается (выполняются процедуры)
4. Создана таблица с результатами выполнения
5. Если выполнено - то производится сжатие востановление и выносится обратно на сетевой ресурс, если нет то повторяется процедура без содания архива (количество повторов советую ограничить)

Все кода для копирования архивации есть на этом форуме, по моему я даже когда-то вылаживал базу (не уверен!)
Да, это отлично работает как запасной вариант.
Локально все изменения в базе происходят без проблем.
Но все таки истинная причина проблем обновления по сети до конца не определена. Сетевой админ ничего внятного объяснить не может.
Попробую по совету Андрэича поэсперементировать, но в случае сбоя, будет просто откат и все, ну если в несколько попыток то может все таки пробьет обновление по сетке. Возможно и причины откатов выяснятся...
DREDUA вне форума Ответить с цитированием
Старый 18.12.2012, 18:47   #20
gluk_fm
Форумчанин
 
Аватар для gluk_fm
 
Регистрация: 09.06.2011
Сообщений: 515
По умолчанию

Вы также можете воспользоваться советом Андрэича, НО мой Вас совет:
1. Всегда делайте архивы Ваших баз данных перед процедурами (из личного опыта могу сказать : несколько работавших баз перестали открываться по непонятным причинам, а данные в исходных таблицах заменились ?????, что заставило перезагружать всё заново)
2. Таблица с результатами выполнения процедур - ОЧЕНЬ полезна, особенно если необходимо выяснить кто, что и когда напоролол!
gluk_fm вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запросы в access mo_Ouse Microsoft Office Access 3 22.12.2011 19:46
Запросы в Access skdv2005 Microsoft Office Access 6 27.08.2010 17:25
Запросы в Access`e Vasskanov Microsoft Office Access 1 15.06.2009 16:19
Запросы в access Мария100684 Microsoft Office Access 1 06.10.2008 15:48
запросы в Access Натали Microsoft Office Access 3 14.03.2007 11:38