PROBLEMA: Erro de ASP 80004005 "nome de origem de dados não encontrado"

Traduções de Artigos Traduções de Artigos
Artigo: 306345 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sintomas

Quando utiliza ADO (ActiveX Data Objects) ou ODBC para abrir uma ligação à base de dados numa página ASP (Active Server Pages), poderá receber a seguinte mensagem de erro:
Fornecedor Microsoft OLE DB para controladores de ODBC erro '80004005'
[Microsoft][ODBC Driver Manager] Nome de origem de dados não foi encontrado e controlador predefinido não especificado.

Causa

Este erro pode ocorrer quando utiliza uma cadeia de ligação baseada no DSN, Data Source Name (uma cadeia de ligação que utiliza um DSN de sistema) ou uma cadeia de ligação sem DSN com ADO e ODBC para abrir uma ligação à base de dados numa página ASP. As causas comuns deste erro são listadas abaixo.

Utilizar um DSN de ODBC

  • A conta de utilizador Microsoft Windows NT 4.0 ou Windows 2000 que é utilizada para processar o pedido para a página ASP não tem permissões suficientes para ler a chave de registo que armazena o DSN especificado informações de configuração.
  • O sistema de ODBC DSN especificada na cadeia de ligação ADO não existe no servidor de IIS.
  • A variável ASP Application ou Session é inicializada no ficheiro global.asa da aplicação ASP de ficheiros (ou numa página ASP que é acedida antes da página que contém o código de ligação de base de dados) é utilizado para especificar a cadeia de ligação ADO. Esta variável de cadeia de ligação não é inicializado quando o código para abrir a ligação de base de dados é executado. Para confirmar este, adicione uma instrução Response.Write antes da linha de código que abre a ligação de base de dados para apresentar a cadeia de ligação que é armazenada na variável de.

Utilizar uma cadeia de ligação DSN menor

  • A conta de utilizador Windows NT 4.0 ou Windows 2000 que é utilizada para processar o pedido para a página ASP não tem permissões suficientes para ler a chave de registo que armazena do controlador de ODBC especificado informações de configuração. O parâmetro de controlador de um DSN - menos cadeia de ligação Especifica o ODBC controlador que é utilizado para estabelecer a ligação de base de dados.
  • O nome do controlador de ODBC especificado na cadeia de ligação está mal escrito ou especifica um controlador não está instalado no servidor Internet Information Server (IIS).
  • A variável ASP Application ou Session é inicializada no ficheiro global.asa da aplicação ASP de ficheiros (ou numa página ASP que é acedida antes da página que contém o código de ligação de base de dados) é utilizado para especificar a cadeia de ligação ADO. Esta variável de cadeia de ligação não é inicializado quando o código para abrir a ligação de base de dados é executado. Para confirmar este, adicione uma instrução Response.Write antes da linha de código que abre a ligação de base de dados para apresentar a cadeia de ligação que é armazenada na variável de.

Resolução

importante Esta secção, método ou tarefa contém passos que indicam como modificar o registo. No entanto, poderão ocorrer problemas graves se modificar o registo de forma incorrecta. Por conseguinte, certifique-se de que segue estes passos cuidadosamente. Criar uma para protecção adicional, cópia de segurança do registo antes de o modificar. Em seguida, pode restaurar o registo se ocorrer um problema. Para obter mais informações sobre como efectuar uma cópia de segurança e restaurar o registo, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
322756Como efectuar uma cópia de segurança e restaurar o registo no Windows

Utilizar um DSN de ODBC

Permissões insuficientes para ler a chave de registo DSN

Conceda a conta de utilizador Windows NT 4.0 ou Windows 2000 acesso de leitura para a chave de registo especificada do ODBC DSN de sistema da seguinte forma:
  1. Determine qual a conta utilizada para processar o pedido para a página ASP.
  2. A partir do menu Iniciar , clique em Executar , escreva regedt32.exe e, em seguida, clique em OK para iniciar o Editor de registo.
  3. Na janela HKEY_LOCAL_MACHINE , vá para a chave HKLM\SOFTWARE\ODBC\ODBC.INI . A chave ODBC.ini contém uma subchave de cada DSN de sistema de ODBC é registado no servidor.
  4. Clique a chave de registo DSN para o DSN especificada na cadeia de ligação ADO.
  5. No menu segurança , clique em permissões .
  6. Adicione a conta de utilizador é identificado no passo 1 à lista de utilizadores que podem aceder a esta chave e seleccione a caixa de verificação leitura para este utilizador.
  7. Clique em Aplicar e, em seguida, feche Editor de registo.

DSN especificada não existe no servidor IIS

Crie o DSN de ODBC sistema especificado no servidor IIS.

Código de global.asa para inicializar a cadeia de ligação ADO não está em execução

  1. Verificar se a pasta de aplicações do IIS tiver sido configurada como um directório virtual do IIS com permissões para executar scripts.
  2. Verifique se o ficheiro global.asa está localizado no IIS directório raiz da aplicação.
  3. Se a pasta de aplicação já está configurada como um IIS virtual directório, remova e volte a criar a aplicação IIS.
  4. Consulte os artigos listados na secção "Referências" para determinar se um destes artigos aplicar a sua situação específica.
  5. Contacte o suporte técnico da Microsoft se o código de global.asa ainda não parece estar em execução depois de efectuar os passos anteriores.

Utilizar uma cadeia de ligação DSN menor

Permissões insuficientes para ler a chave de registo controlador ODBC especificada

Conceda a conta de utilizador Windows NT 4.0 ou Windows 2000 acesso de leitura para a chave de registo de controlador de ODBC especificada da seguinte forma:
  1. Determine qual a conta utilizada para processar o pedido para a página ASP.
  2. A partir do menu Iniciar , clique em Executar , escreva regedt32.exe e, em seguida, clique em OK para iniciar o Editor de registo.
  3. Na janela HKEY_LOCAL_MACHINE , vá para a chave HKLM\SOFTWARE\ODBC\ODBCINST.INI . A chave ODBCINST.INI contém uma subchave para cada controlador de ODBC instalado no servidor.
  4. Clique na chave de registo de controlador para o controlador especificado na cadeia de ligação ADO.
  5. No menu segurança , clique em permissões .
  6. Adicione a conta de utilizador é identificado no passo 1 à lista de utilizadores que podem aceder a esta chave e seleccione a caixa de verificação leitura para este utilizador.
  7. Clique em Aplicar e, em seguida, feche Editor de registo.

Nome do controlador está mal escrito ou não estiver instalado no servidor IIS

Certifique-se que o nome do controlador de ODBC está escrito correctamente no ADO cadeia de ligação. Além disso, verifique se o controlador especificado está instalado no servidor IIS. Para ver uma lista de controladores ODBC instalado num sistema, consulte o administrador da origem de dados (Odbcad32.exe) de ODBC no separador controladores .

Código de global.asa para inicializar a cadeia de ligação ADO não está em execução

  1. Verificar se a pasta de aplicações do IIS tiver sido configurada como um directório virtual do IIS com permissões para executar scripts.
  2. Verifique se o ficheiro global.asa está localizado no IIS directório raiz da aplicação.
  3. Se a pasta de aplicação já está configurada como um IIS virtual directório, remova e volte a criar a aplicação IIS.
  4. Consulte os artigos listados na secção "Referências" para determinar se um destes artigos aplicar a sua situação específica.
  5. Contacte o suporte técnico da Microsoft se o código de global.asa ainda não parece estar em execução depois de efectuar os passos anteriores.

Ponto Da Situação

Este comportamento ocorre por predefinição.

Mais Informação

A conta de utilizador Windows NT 4.0 ou Windows 2000 cujas credenciais são utilizadas para processar um pedido de uma página ASP é determinada pelo mecanismo de autenticação que o servidor Web utiliza para autenticar o pedido do utilizador. Por exemplo, se utilizar autenticação anónima, as credenciais da conta anónimo de IIS configurada (IUSR_ < WebServerName > conta por predefinição) é utilizado para processar o pedido do utilizador. Quando utiliza autenticação básica, o Microsoft Internet Explorer solicita ao utilizador para fornecer um válido Windows NT 4.0 ou o ID de utilizador do Windows 2000 Network e palavra-passe cujas credenciais, em seguida, são utilizados para processar o pedido. Para obter informações adicionais sobre os mecanismos de autenticação suportado e como funcionam, consulte a documentação online do IIS.

Referências

Para obter informações adicionais, clique nos números de artigo existentes abaixo para visualizar os artigos na Microsoft Knowledge Base:
188715ASA global não accionar quando Visual InterDev efectuadas IIS 4.0 aplicação
288245PROBLEMA: Global.asa não despoletado do Personal Web Server no Windows 98
265275FP2000: Global.asa não é executado na Web do FrontPage

Propriedades

Artigo: 306345 - Última revisão: 11 de agosto de 2006 - Revisão: 5.4
A informação contida neste artigo aplica-se a:
  • Microsoft Active Server Pages 2.0
  • Microsoft Active Server Pages 3.0
  • Microsoft Internet Information Server 4.0
  • Serviços de informação Internet 5.0 da Microsoft
  • Microsoft Data Access Components 2.0
  • Microsoft Data Access Components 2.1
  • Microsoft Data Access Components 2.1 Service Pack 1
  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Data Access Components 2.5
  • Microsoft Data Access Components 2.5 Service Pack 1
  • Microsoft Data Access Components 2.5 Service Pack 2
  • Microsoft Data Access Components 2.6
  • Microsoft Data Access Components 2.6 Service Pack 1
  • Microsoft Data Access Components 2.7
Palavras-chave: 
kbmt kbprb KB306345 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 306345

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com