|
Access и MSSQL, не изменить данные в таблице
|
|||
---|---|---|---|
#18+
Впервые переношу данные Access-овской базы на MSSQL сервер. Чтобы минимизировать затрты времени, средствами Access скопировал таблицы на сервер и прилинковал их. Из некоторых запросов сделал View, а некоторые оставил в Access. Столкнулся со следующей проблемой: Имеется таблица Т1, перенесенная на сервер, и View V1, построенное на основе данных из Т1. Имеется разделенная форма Ф1, которая использует V1, а иногда из Ф1 вызывается форма Ф2, в которой я программно (запросом Access, выполняемым с помощью CurrentDb.Execute) пытаюсь менять данные в Т1. Они не меняются. Все зависает и через несколько минут выдается сообщение типа «ODBC. Не удалось обновить данные в присоединенной таблице Т1». Если Ф1 закрыть, то все обновляется. Когда данные лежали в Access-овской базе – все выполнялось. Наверное об этом уже сто раз спрашивали, но я не нашел. Прошу помочь советом. И раъяснить, в чем дело. Access 2010, MSSQL 2014, Счетчик в таблице есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2017, 21:28 |
|
Access и MSSQL, не изменить данные в таблице
|
|||
---|---|---|---|
#18+
Вообще-то DAO надо было переписать на ADO ещё до переноса данных на сервер... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2017, 21:46 |
|
Access и MSSQL, не изменить данные в таблице
|
|||
---|---|---|---|
#18+
Дык, я понимаю, что нужно было переносить на ORACLE, а писать на С##, но что есть - то есть. Вариант с "переписыванием" не годится, т.к. на это банально нет времени. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2017, 22:15 |
|
Access и MSSQL, не изменить данные в таблице
|
|||
---|---|---|---|
#18+
DAO не может нормально работать с SQL серверами, включая и Oracle. Все переписывать не нужно, но без изменения некоторых участков кода не обойтись ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2017, 07:13 |
|
Access и MSSQL, не изменить данные в таблице
|
|||
---|---|---|---|
#18+
K-NickДык, я понимаю, что нужно было переносить на ORACLE, а писать на С##, но что есть - то есть. Вариант с "переписыванием" не годится, т.к. на это банально нет времени. Ваш сарказм не уместен. Вам дело говорят. Ну а если банально и нет времени, то ......(абзац-полный) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2017, 07:51 |
|
Access и MSSQL, не изменить данные в таблице
|
|||
---|---|---|---|
#18+
K-NickИмеется разделенная форма Ф1, которая использует V1, а иногда из Ф1 вызывается форма Ф2, в которой я программно (запросом Access, выполняемым с помощью CurrentDb.Execute) пытаюсь менять данные в Т1. Они не меняются. Все зависает и через несколько минут выдается сообщение типа «ODBC. Не удалось обновить данные в присоединенной таблице Т1». Если таблица с identyti-полем (счетчик, которое) то запросы к ней должны выполняться с опцией dbSeeChanges ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2017, 08:18 |
|
Access и MSSQL, не изменить данные в таблице
|
|||
---|---|---|---|
#18+
dbSeeChanges,K-NickИмеется разделенная форма Ф1, которая использует V1, а иногда из Ф1 вызывается форма Ф2, в которой я программно (запросом Access, выполняемым с помощью CurrentDb.Execute) пытаюсь менять данные в Т1. Они не меняются. Все зависает и через несколько минут выдается сообщение типа «ODBC. Не удалось обновить данные в присоединенной таблице Т1». Если таблица с identyti-полем (счетчик, которое) то запросы к ней должны выполняться с опцией dbSeeChangesоб этом даже говорит и сам Access, когда выдаёт ошибку. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2017, 09:24 |
|
Access и MSSQL, не изменить данные в таблице
|
|||
---|---|---|---|
#18+
AkinaВообще-то DAO надо было переписать на ADO ещё до переноса данных на сервер... :) ... Почему меня не предупредили об этом раньше? Но про ADO я слышала, что он в дальнейших версиях Access не будет поддерживаться или я не так поняла, не знаю. Да, переделывать и переделывать пришлось много и еще чуть-чуть осталось. Уже некоторые моменты автоматизировала и более-менее быстрее идет работа. С ADO, надеюсь, не придется связываться, наверное тоже много времени займет. Access, отчасти хоть и нравится мне в какой-то степени, но хотелось бы, чтобы он был более усовершенствованный. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2017, 20:12 |
|
Access и MSSQL, не изменить данные в таблице
|
|||
---|---|---|---|
#18+
Всем спасибо. Я, конечно, надеялся, что найдется способ решить проблему не переписывая программу, но если "доктор сказал: 'В морг' - значит в морг". Попробовал на ADO - дествительно проблема исчезла. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2017, 21:30 |
|
Access и MSSQL, не изменить данные в таблице
|
|||
---|---|---|---|
#18+
K-Nick, Ну не надо хоронить DAO сразу. Я вот с помощью DAO работаю и с MS SQL Server, и с ORACLE и ничего, всё работает. :) Правда бывает раз за разом некоторые непонятные ошибки, но по мере возникновения таковых потихоньку решаю проблему. Вот только единственное, что пришлось решить исключительно только в ADO, так это асинхронный запрос. А так больше не припоминаю, что нельзя сделать в DAO. Конечно особо сложные запросы следует превратить на "запрос к серверу" и пусть сервер обрабатывает. У него лучше получиться. В Вашем случае надо смотреть что да как. Уверен, что можно решить и с помощью DAO. Надо бы посмотреть на типы данных, кроме счётчика там ещё могут быть засады. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2017, 07:40 |
|
|
start [/forum/topic.php?fid=45&fpage=78&tid=1612529]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 316ms |
total: | 448ms |
0 / 0 |