Access 2000 подключается к SQL Server 2005

В компании, в которой я работаю, есть старое приложение Access 2000, которое использовало серверную часть SQL Server 2000. Нам было поручено перенести серверную часть в базу данных SQL Server 2005 на новый сервер. К сожалению, приложение не работало правильно при попытке сделать какие-либо вставки или обновления. Мое исследование нашло много сообщений на форуме, что Microsoft Access 2000 -> SQL 2005 не поддерживается Microsoft, но я не могу найти документацию Microsoft, чтобы проверить это.

Может кто-нибудь связать меня с какой-то официальной документацией, или кто-то использовал эту настройку и может подтвердить, что она должна работать, и наши проблемы лежат где-то еще?

Не уверен, что это важно, но приложение представляет собой ADP, скомпилированный в ADE.

7 ответов

У меня была похожая проблема раньше при использовании связанных таблиц ODBC для подключения к серверу Sql. Решением было связать таблицы и указать первичный ключ для таблицы. Если Access не знает первичный ключ, он не может выполнять вставки или обновления.

У меня нет никакого опыта работы с ADP, но это может быть похоже, вот статья базы знаний об этом здесь http://support.microsoft.com/?scid=kb%3Ben-us%3B235267&x=15&y=13

Я бы сказал, проверьте VBA в макросах, чтобы увидеть, как он это делает. Вероятно, используется какая-то форма подключения VB к базе данных на задней панели. Мне нравится тот факт, что база данных связывается с базой данных для ее данных...:)

Я не уверен в том, что эта конкретная комбинация поддерживается, но вы пытались установить режим совместимости для базы данных на SQL Server 2000. Возможно, это решит ваши проблемы.

Изменить: Для этого запустите следующий SQL:

EXEC sp_dbcmptlevel Name_of_your_database, 80;

Более подробно здесь: http://blog.sqlauthority.com/2007/05/29/sql-server-2005-change-database-compatible-level-backward-compatibility/

Access ADP очень тесно связаны с версиями SQL Server, и MS проделала очень плохую работу по исправлению и взлому ADP в трех основных версиях, которые были выпущены (2000, 2002 и 2003).

Если вы пытаетесь использовать скомпилированный ADE, я бы посоветовал сначала найти оригинальный ADP и посмотреть, сможете ли вы заставить его работать. Возможно, вам придется поработать там перед созданием ADE.

Предостережение: я не использую ADP, и я рад, что принял решение не делать этого, поскольку Microsoft в настоящее время осуждает их в пользу MDB=>ODBC=>SQL Server.

Все, что я прочитал о Access 2000 -> SQL Server 2005, - это то, что мастер увеличения не поддерживается.

Если только вставки и обновления не работают, это звучит как проблема с разрешениями. Убедитесь, что имя входа sql-сервера, которое вы используете в строке подключения, имеет разрешение на чтение / запись в вашей базе данных.

Пожалуйста, избегайте использования учетной записи "sa" для этой цели!

но вы пытались установить режим совместимости базы данных на SQL Server 2000.

Я только что проверил базу данных 2005 года, выбрал базу данных и щелкнул "Свойства" -> "Параметры", и там говорится, что БД уже находится в режиме совместимости с 2000 годом.

Если только вставки и обновления не работают, это звучит как проблема с разрешениями. Убедитесь, что имя входа sql-сервера, которое вы используете в строке подключения, имеет разрешение на чтение / запись в вашей базе данных.

Пожалуйста, избегайте использования учетной записи "sa" для этой цели!

Мы хотели использовать общую учетную запись приложений, но этот логин "не мог найти" ни одну из хранимых процедур, даже если они существовали, и у логина были явные разрешения на их выполнение (и он также был успешно протестирован как пользователь в SQL Management Studio), Лишь после того, как мы предоставили привилегии для входа в систему "sa", мы фактически могли получить доступ к базе данных через приложение.

но вы пытались установить режим совместимости базы данных на SQL Server 2000.

Я не совсем уверен, как это сделать. Могли бы вы объяснить?

Также следует отметить, что если мы обновим приложение до Access 2003, все будет работать нормально. К сожалению, наш ИТ-отдел не хочет обновлять всех с Office 2000 до 2003, так что это не вариант.

Спасибо за вашу помощь.

Другие вопросы по тегам