2011-10-31 2 views
1

Проблема: Не удалось найти Устанавливаемые ISAMОшибка при подключении MS SQL Server 2005 View с MS Access 2003 запросов

Я выполняющийся запрос из MS Access для того, чтобы извлекать информацию из MS SQL Server 2005. Когда я попытайтесь открыть связанное соединение ODBC с таблицей напрямую, она открывается без проблем. Однако, когда я пытаюсь создать соединение с DSN-less, я получаю ошибку ISAM.

У меня есть следующее сообщение об ошибке при попытке выполнить мой SELECT запрос:

«Не удался найти устанавливаемый ISAM.»

кода я использую следующий образ:

SELECT * FROM [Driver={SQL Server}; 
    Server=Server_Name\Instance; 
    Database=Database_Name; 
    Integrated Security=SSPI;].[My_View_Name] 

помощь из MS Access предоставляет следующую информацию:

Не удался найти устанавливаемый ISAM. (Ошибка 3170) DLL для устанавливаемого файла ISAM не найден. Этот файл необходим для связывания внешних таблиц (кроме ODBC или Microsoft Таблиц базы данных Jet). Расположение всех драйверов ISAM - , которые хранятся в реестре Microsoft® Windows®. Эти записи: создаются автоматически при установке приложения. Если вы меняете расположение этих драйверов, вам необходимо исправить заявку Программа установки, чтобы отразить это изменение и внести правильные записи в Реестр.

Возможные причины:

+ Запись в реестре не является действительным. Например, эта ошибка возникает, если вы используете внешнюю базу данных Paradox, а запись Paradox указывает на несуществующий каталог или драйвер. Выйдите из приложения , исправьте реестр Windows и повторите операцию .

+ Одна из записей в реестре указывает на сетевой диск и эта сеть не подключена. Убедитесь, что сеть доступна, и , затем повторите попытку.

Я также нашел статьи KB от Microsoft, объясняющие, когда и как это следует обрабатывать. Однако они неясны для меня, если они действительно связаны с другим типом проблемы.

Например:

283881209805 и скажи мне цель ISAM, чтобы сказать, как форматировать другие данные, то, родное форматирование MS Access'. (Но я не хочу форматировать его по-другому, а другие форматы не перечисляют то, что я считаю подходящим форматом-er)

и, 90111 Сообщает нам, что драйвер в файле .ini может указывать в неправильном месте в MS Access 2.0, который больше не существует в версии 97+.

Странно, что у меня есть настройка без DNS для другой таблицы, которая отлично работает. Единственное отличие, которое я вижу здесь, - это присвоение имени объекта базы данных по умолчанию, не является стандартным, поэтому, возможно, я не правильно отношусь к схеме в своем синтаксисе.

  • Что я здесь делаю неправильно? Это действительно синтаксическая ошибка? *
  • Есть ли какие-либо соображения о разрешении «View», которые должны быть сделаны на сервере?

ответ

2

Попробуйте добавить ODBC; в начале строки соединения и удалить скобки вокруг названия вида:

SELECT * FROM [ODBC;Driver={SQL Server}; 
Server=Server_Name\Instance; 
Database=Database_Name; 
Integrated Security=SSPI;].My_View_Name 
Смежные вопросы