Wulin.com (www.vevb.com) В процессе написания WEB-приложений нам часто приходится иметь дело с базами данных, такими как базы данных ACCESS, SQL SERVER и т. д., которые мы часто используем ежедневно. При подключении к этим базам данных система часто выдает ошибки 80004005. Эти различные сообщения об ошибках очень неприятны. Чтобы помочь пользователям сети решить такие проблемы, в этой статье будут подробно описаны такие проблемы и даны ответы на них.
[сообщение об ошибке]
Поставщик Microsoft OLE DB для драйверов ODBC, ошибка «80004005»
[Microsoft][Драйвер ODBC Microsoft Access 97] База данных Microsoft Jet
движок не может открыть файл «(неизвестно)». Он уже открыт эксклюзивно.
другим пользователем, или вам необходимо разрешение на просмотр его данных.
[причина]
Эта ошибка возникает, когда IIS использует анонимную учетную запись (обычно IUSR), которая обращается к каталогу, в котором находится база данных в NT.
Не имеет правильных разрешений.
[Решение]
1. Проверьте права доступа к файлам и каталогам. Убедитесь, что у Evryone есть разрешения на создание и удаление временных файлов в каталоге.
2. Проверьте, помечен ли файл источника данных (DSN) как используемый другими программами. Обычно это программы Visual InterDev. Закройте любой проект, открывающий соединение с базой данных в InterDev.
3. Проверьте, подключена ли в данный момент таблица в ACCESS к сетевому серверу.
[сообщение об ошибке]
Поставщик Microsoft OLE DB для драйверов ODBC, ошибка «80004005»
[Microsoft][Драйвер ODBC Microsoft Access 97] Не удалось использовать «(неизвестный)»;
уже используется.
[причина]
Для подключения к базе данных ACCESS она используется, а база данных заблокирована, что делает ее недоступной.
[сообщение об ошибке]
Поставщик Microsoft OLE DB для драйверов ODBC, ошибка «80004005»
[Microsoft][Диспетчер драйверов ODBC] Имя источника данных не найдено и не имеет значения по умолчанию.
указан драйвер.
[причина]
Возможная причина заключается в том, что ConnectString инициализирует строку подключения приложения в global.asa, но файл global.asa в настоящее время не работает должным образом.
[Решение]
Проверьте правильность назначения и добавьте в asp следующий код:
<%= 'auth_user' — это & request.servervariables(auth_user)%>
<П>
<%= 'auth_type' — это & request.servervariables(auth_type)%>
<П>
<%= строка подключения & session(your_connectionstring)%>
<П>
Другая причина в том, что в ConnectString добавляются пробелы, например
DSN = База данных MyDSN = Пабы;
Попробуйте изменить его на что-то вроде этого:
DSN=MyDSN;База данных=Pubs;
Если global.asa не запускался, проверьте, находится ли файл в корневом каталоге приложения или в корневом каталоге виртуального каталога.
Также возможно, что ошибка возникает из-за того, что имя DSN не найдено. Эту проблему можно решить, используя предоставленный мной метод id=36767. Последний шаг — проверить, установлен ли последний драйвер, то есть является ли это последней версией MDAC.
[сообщение об ошибке]
Поставщик Microsoft OLE DB для драйверов ODBC, ошибка «80004005»
[Microsoft][Диспетчер драйверов ODBC] Имя источника данных не ??
[причина]
Эта ошибка может возникнуть в порядке установки (или удаления) программного обеспечения на вашем компьютере. Эта ошибка возникает, если версии ODBC несовместимы.
[Решение]
Решение — установить последнюю версию MDAC.
[сообщение об ошибке]
Поставщик Microsoft OLE DB для драйверов ODBC, ошибка «80004005»
[Microsoft][Драйвер драйвера ODBC Access 97 ODBC]Общая ошибка Невозможно открыть
ключ реестра «DriverId».
[причина]
Эта ошибка возникает при чтении значений из реестра. Используйте regedit32.exe для проверки разрешений реестра.
[сообщение об ошибке]
Поставщик Microsoft OLE DB для драйверов ODBC, ошибка «80004005»
[Microsoft][Драйвер ODBC SQL Server][dbnmpntw]ConnectionOpen (CreateFile()).
[причина]
Одна из причин: когда база данных содержит отношения разрешений на разных компьютерах, это также может произойти на одном и том же компьютере, если для одного отношения установлен путь UNC, а для другого - локальный путь.
Причина вторая: когда пользователь входит в систему, используя анонимную учетную запись IIS, он имеет права на локальный компьютер, но для компьютера с UNC-путем машина не будет думать, что на нем находится учетная запись, в которую вы сейчас вошли анонимно. Это тоже законно. Таким образом, он не позволит вам получить доступ к ресурсам на нем, что приведет к ошибкам.
[Решение]
1. В инструменте IIS измените анонимную учетную запись IIS на другую учетную запись на основе домена. (То есть не используйте анонимный вход)
2. Или создайте учетную запись, аналогичную текущей анонимной учетной записи, на компьютере, где вы хотите получить доступ к ресурсам, и используйте тот же пароль.
[сообщение об ошибке]
Поставщик Microsoft OLE DB для драйверов ODBC, ошибка «80004005» Microsoft] [ODBC
Драйвер Microsoft SQL] Ошибка входа в систему()
[причина]
Эта ошибка генерируется SQL Server, когда он не принимает или не может распознать учетную запись для входа или не входит в систему как администратор.
Это также может быть вызвано тем, что в NT нет учетной записи сопоставления SQL.
[Решение]
Войдите в систему с учетной записью системного администратора (SA). Общий пароль должен быть пустым. Обратите внимание, что в это время необходимо использовать CoonectString, а файл DSN использовать нельзя. Потому что имя пользователя и пароль не сохраняются в DSN. Проверьте, сопоставила ли NT учетную запись с SQL.
[сообщение об ошибке]
Поставщик Microsoft OLE DB для драйверов ODBC, ошибка «80004005»
[Microsoft][Драйвер ODBC SQL Server][SQL Server] Ошибка входа в систему — Пользователь: Причина:
Не определен как действительный пользователь доверенного соединения SQL Server.
[причина]
Эта ошибка генерируется SQL Server, когда он не принимает или не может распознать учетную запись для входа или не входит в систему как администратор.
Это также может быть вызвано тем, что в NT нет учетной записи сопоставления SQL.
[Решение]
В диспетчере предприятия SQL Server выберите Сервер/SQL Server/Настроить[ASCII
133]/Параметры безопасности/Стандарт. Если вы работаете в IIS4, снимите флажок «Синхронизация паролей» для проекта.
[сообщение об ошибке]
Предоставление Microsoft OLE DB