Como aceder a SQL Server no Active Server Pages

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

Nesta página

Sumário

Este artigo descreve como estabelecer ligações ao SQL Servidor num script ASP utilizando o ActiveX Data Objects (ADO), tendo vantagem do pooling de funcionalidade do ODBC 3.0.



Mais Informação

Pooling de conexões

Active o agrupamento de ligações de ODBC.
Para obter informações adicionais sobre o pooling de conexões e para obter instruções sobre como activar esta funcionalidade, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
164221Como activar o agrupamento de ligações numa aplicação ODBC

ODBC DSN

Utilizar o administrador de ODBC, criar um nome de origem de dados do sistema (DSN) no computador onde está o Microsoft Internet Information Server (IIS) instalado. Especificar o atributo de ligação, uma vez e, em seguida, reutilizá-lo no todas as páginas. Por exemplo, no evento Session_OnStart no ficheiro global. asa, defina o atributo de ligação como:
   Session("ConnectionString") =
   "dsn=SQLSysDSN;uid=<username>;pwd=<strong password>;DATABASE=pubs;APP=ASP Script"				
Certifique-se de que todas as seguintes condições são verdadeiras:
  • A caixa de Ligação fidedigna não está seleccionada na definição de DSN de sistema.
  • O modo de segurança do SQL Server não está integrada do Windows NT.
  • O atributo de ligação, o uid não está vazio.
Caso contrário, uma ligação ao servidor de SQL poderá falhar e recebe a seguinte mensagem de erro:

Microsoft Fornecedor de OLE DB para o erro de controladores ODBC '80004005'
[Microsoft][SQL DE ODBC Controlador do servidor] [servidor SQL] início de sessão falhou-utilizador: _
Motivo: Não definido como um utilizador válido de uma ligação fidedigna do SQL Server.

Global. asa

Utilização do ficheiro global. asa é opcional. No seu lugar, entradas Normalmente, estabelecida neste ficheiro pode ser colocado na primeira página chamada pelo aplicação. Partindo do princípio que os scripts ASP estão localizados numa pasta que não é definida como um directório virtual no Gestor de serviços Internet, mas inferior a outro directório virtual, o global. asa de variáveis da sessão que contenham ficheiros e Definições de DSN devem ser mantidas no directório virtual. Caso contrário, receberá a seguinte mensagem de erro:

Microsoft OLE DB Fornecedor para o erro de controladores ODBC '80004005'
[Microsoft][Controlador ODBC Não foi encontrado um nome e não de origem de dados do Gestor]
controlador predefinido especificado

Ligações no Script de ASP

Tirar partido do agrupamento de ligações por abrir e fechar o ligação à base de dados em todas as páginas de servidor activas. Para abrir a ligação, Escreva as seguintes instruções no<Body>secção da página: </Body>
   <%
   Set OBJdbConnection = Server.CreateObject("ADODB.Connection")
   OBJdbConnection.Open Session("ConnectionString")   %>				
Para fechar a ligação, coloque o seguinte imediatamente depois de tag:
   <%
   OBJdbConnection.Close
   Set OBJdbConnection = Nothing
   %>				
Poderá receber as seguintes mensagens de erro se a ligação as definições não estão correctamente definidas conforme descrito neste artigo:

Fornecedor Microsoft OLE DB para controladores ODBC Error '80004005'
[Microsoft][Controlador ODBC SQL Server][DBNMPNTW]Ligação quebrada.
- ou -

Fornecedor Microsoft OLE DB para ODBC Erro de controladores '80004005'
[Microsoft][Controlador ODBC SQL Server]Comunicação Falha de ligação

Segue-se uma aplicação de exemplo que consiste a Global. asa e os ficheiros Authors.asp. Esta aplicação de exemplo irá devolver quatro colunas e de todos os registos na tabela pubs denominado autores.

Nota Tem de alterar o UID <username>e pwd =<strong password=""> para os valores correctos antes de executar este código. Tornar -se de que o UID tem as permissões adequadas para executar esta operação o base de dados.

Global. asa</strong></username>
   <SCRIPT LANGUAGE=VBScript RUNAT=Server>
   Sub Session_OnStart
   Session("ConnectionString") =
   "DSN=SQLSysDSN;UID=<username>;PWD=<strong password>;DATABASE=pubs;APP=ASP script"
      Session("ConnectionTimeout") = 15
      Session("CommandTimeout") = 30
   End Sub

   Sub Session_OnEnd

   End Sub
   </SCRIPT>				
Authors.asp
   <HTML>
   <HEAD>
   <TITLE>All Authors</TITLE>
   </HEAD>
   <BODY BGCOLOR="#FFFFFF">

   <% Set OBJdbConnection = Server.CreateObject("ADODB.Connection")
   OBJdbConnection.ConnectionTimeout = Session("ConnectionTimeout")
   OBJdbConnection.CommandTimeout = Session("CommandTimeout")
   OBJdbConnection.Open Session("ConnectionString")
   Set SQLStmt = Server.CreateObject("ADODB.Command")
   Set RS = Server.CreateObject ("ADODB.Recordset")
   %>

   <p>
   <table border="0" bordercolor="#000000">
   <%
   SQLStmt.CommandText = "select * from authors"
   SQLStmt.CommandType = 1
   Set SQLStmt.ActiveConnection = OBJdbConnection
   RS.Open SQLStmt

   Do While Not RS.EOF
   %>
   <TR>
      <TD Width = 150 ALIGN=LEFT>
         <FONT SIZE=+1>
         <%= RS("au_id") %>
         </FONT></TD>
      <TD></TD>
         <TD Width = 150 ALIGN=LEFT>
         <FONT SIZE=+1>
         <%= RS("au_lname")  %>
         </FONT></TD>
      <TD Width = 150 ALIGN=LEFT>
         <FONT SIZE=+1>
         <%= RS("au_fname")  %>
         </FONT></TD>
      <TD Width = 150 ALIGN=LEFT>
         <FONT SIZE=+1>
         <%= RS("phone")  %>
         </FONT></TD>
   </TR>
   <%
   RS.MoveNext
   Loop
   %>
   </table>
   <hr>
   <p>
   </BODY>
   <% OBJdbConnection.Close
   Set OBJdbConnection = Nothing
   %>
   </HTML>				
Para mais informações sobre Active Server Pages, consulte o guia fornecido pelo programa de configuração ASP no servidor de IIS.

Propriedades

Artigo: 169377 - Última revisão: 28 de junho de 2013 - Revisão: 11.0
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 6.5 Standard Edition
  • Microsoft SQL Server 6.0 Standard Edition
  • Microsoft SQL Server 4.21a Standard Edition
  • Microsoft Internet Information Server 3.0
  • Serviços de informação Internet 5.0 da Microsoft
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL 2005 Server Workgroup
Palavras-chave: 
kbsqlsetup kbenv kbhowto kbinterop kbtshoot kbmt KB169377 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: 169377

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