Shopping Hospedagem Fórum Contato
     
   O portal do desenvolvedor ASP Florianópolis-SC, Sábado - 18 de Novembro de 2017  
Busca

Menu do site
Efetuar Login
Usuário:

Senha:

 Esqueceu a senha?
Login automático

 Cadastre-se
Codificar manualmente uma conexão de dados ADO no ASP
Avaliações: 15   -   Minha nota: Média Geral: 7  

Este procedimento passo a passo demonstra como codificar manualmente uma conexão de dados ActiveX Data Objects (ADO) em uma página ASP.

Para atender ao objetivo deste artigo, o exemplo a seguir usa o banco de dados de exemplo Northwind e estabelece uma conexão ADO com o Microsoft Access e o Microsoft SQL Server 7.0 ou 2000.

A seqüência de conexão

A seqüência de conexão é simplesmente um conjunto de valores de seqüência de caracteres que contêm informações de conexão do banco de dados. Por exemplo, a seqüência de caracteres a seguir aponta para o banco de dados do Access:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Mydatabase\Northwind.mdb
onde "C:\Mydatabase\Northwind.mdb" representa o caminho de origem, que você deve modificar para refletir as informações de caminho corretas no banco de dados Northwind.

A seqüência de caracteres a seguir aponta para o SQL Server:

Provider=SQLOLEDB;Server=Your_Server_Name;Database=Northwind; & _
UID=your_user_account;PWD=your_password;

onde você deve modificar os parâmetros Server, UID e PWD para que reflitam o nome de servidor, nome de usuário e senha corretos do banco de dados, respectivamente.

Colocando a seqüência de conexão para funcionar

Esta seção apresenta o código de exemplo para que se tenha uma idéia melhor de como isso funciona.

No menu Iniciar do Windows, aponte para Programas, Acessórios e clique em Bloco de notas.


Realce o código a seguir, clique com o botão direito do mouse no código e, em seguida, clique em Copiar. No Bloco de notas, clique em Colar no menu Editar para colar o seguinte código no Bloco de notas:


<HTML>
<HEAD>
<title>ADO Open Method</title>
</HEAD>
<BODY>


<H3>ADO Open Method</H3>
<TABLE WIDTH=600 BORDER=0>
<TR>
<TD VALIGN=TOP COLSPAN=3>
<FONT SIZE=2>
<%
' Remember to change the path to Northwind.mdb
' to match the location on your system.
src = "C:\Database\Northwind.mdb"
sConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & src
' Uncomment the next two lines and comment the above line to switch between Access and SQL.
'sConnStr = "Provider=SQLOLEDB;Server=Your_Server_Name;Database=Northwind;" & _
'"UID=your_user_account;PWD=your_password;"

'Create and open the Connection object.
Set OBJdbConn = Server.CreateObject("ADODB.Connection")
OBJdbConn.Open sConnStr
SQLQuery = "SELECT * FROM Customers"

'First Recordset RsCustomerList
Set RsCustomerList = OBJdbConn.Execute(SQLQuery)
%>

<TABLE COLSPAN=8 CELLPADDING=5 BORDER=0>
<!-- BEGIN column header row for Customer Table-->
<TR CLASS=thead>
<TD>Company Name</TD>
<TD>Contact Name</TD>
<TD>City</TD>
<TD>State/Province</TD>
</TR>

<!--Display ADO Data from Customer Table-->
<% Do While Not RScustomerList.EOF %>
<TR CLASS=tbody>
<TD> <%= RSCustomerList("CompanyName")%> </TD>
<TD> <%= RScustomerList("ContactName")%></TD>
<TD> <%= RScustomerList("City")%> </TD>
<TD> <%= RScustomerList("Region")%> </TD>
</TR>
<!--Next Row = Record Loop and add to html table-->
<%
RScustomerList.MoveNext
Loop
RScustomerList.Close
Set RScustomerList = Nothing
OBJdbConn.Close
Set OBJdbConn = Nothing
%>
</TABLE>
</BODY>
</HTML>

No Bloco de notas, clique em Salvar no menu Arquivo. Salve o documento com o nome de arquivo Adopage.asp no site da Web padrão no servidor, que geralmente está localizado em C:\InetPub\Wwwroot.


Para exibir a página, inicie o navegador da Web e digite o local HTTP da página na barra de endereços. Se você salvou o arquivo no local mencionado acima, digite http://localhost/Adopage.asp na barra de endereços.


Explicação do código

No código de exemplo anterior, anote o seguinte código:
src = "C:\Database\Northwind.mdb"
sConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & src
' Uncomment the next two lines and comment the above line to switch between Access and SQL.
'sConnStr = "Provider=SQLOLEDB;Server=Your_Server_Name;Database=Northwind;" & _
'"UID=your_user_account;PWD=your_password;"

Este código está atualmente definido para conectar-se a um banco de dados do Access. Para conectar-se a um banco de dados do SQL Server, comente a linha do provedor do Access e retire o comentário das linhas do SQL Server. Para retirar o comentário de uma linha, insira um apóstrofo (') no início da linha. Para retirar o comentário de uma linha, remova o apóstrofo (') do início da linha. O código revisado aparecerá da seguinte maneira:


src = "C:\Database\Northwind.mdb"
'sConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & src
' Uncomment the next two lines and comment the above line to switch between Access and SQL.
sConnStr = "Provider=SQLOLEDB;Server=Your_Server_Name;Database=Northwind;" & _
"UID=your_user_account;PWD=your_password;"

Na linha de código a seguir, você começará o processo de criação da conexão ADO propriamente dito:
Set OBJdbConn = Server.CreateObject("ADODB.Connection")
Depois, execute o comando Abrir e passe a seqüência de conexão da seguinte maneira:

OBJdbConn.Open sConnStr

Solução de problemas

Quando você usa o ADO no ASP, certifique-se de que:
Sempre fechou os conjuntos de registros e as conexões. Por exemplo:

rs.close
set rs=nothing
conn.close
set conn=nothing

Abra depois e feche no início. Abra os objetos ADO antes que sejam necessários e feche-os após terminar. Isso libera os recursos enquanto outra lógica está em processamento.


Não crie objetos ADO nas variáveis de sessão. Isso ignorará efetivamente a conexão MTX e o pooling de segmentos. Se os segmentos não forem agrupados, cada objeto criado por usuário poderá vincular um segmento. Além disso, se o objeto não for especificamente fechado, uma variável de objeto de sessão poderá dinamizar e vincular um segmento para a vida de uma sessão (o padrão é 20 minutos após o último clique).


Não passe parâmetros para o objeto Command na instrução de execução.


Crie uma instância dos objetos com o método Server.CreateObject se você não estiver empacotando dados através de um firewall. Server instruirá o Microsoft Transaction Server (MTS) a criar o objeto em um pacote do servidor de transação para que esses recursos sejam agrupados.

OBSERVAÇÃO: isso não se aplica ao Microsoft Internet Information Services (IIS) 5.0 ou ao Microsoft COM+.

Não reutilize as variáveis Recordset ou Command. Crie novas variáveis.






SuperASP do Brasil Ltda

03.066.522/0001-84
Av. Rio Branco 433 - Centro - Florianopolis - SC
Contato

© 2001/2008 - Superasp do Brasil Ltda. Todos os direitos reservados