domingo, 24 de abril de 2011

Acessando um base Access em ASP 3.0

Saudações, pessoal!

Mesmo com as novas aplicações web, sendo construídas com as linguagens PHP e ASP.NET, o ASP clássico continua sendo utilizado no ambiente das empresas de pequeno e médio porte. Para os sistemas que não necessitam armazenar uma grande quantidade de informação, normalmente utiliza-se o Microsoft Access como base de dados, por ser de fácil criação e manutenção. Pensando nisso, vamos demonstrar como acessar uma base Access com o ASP 3.0.

Para codificar, vamos utilizar o Adobe Dreamweaver CS3, mas você pode utilizar qualquer editor de texto (inclusive o Notepad do Windows). Além disso, vamos utilizar a base Northwind, já que ela vem com algumas tabelas prontas e pré-alimentadas. Quanto ao visual da página, vamos usar um arquivo CSS com as definições das propriedades dos elementos da página.

Crie um novo arquivo com o nome "access.asp" e codifique-o de acordo com a listagem seguinte:


<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<html>
<head>
<link href="styles.css" rel="stylesheet" type="text/css" /> 
<title>Acessando uma base Access com ASP 3.0</title>
</head>
<body>


<%
Dim con, rs, linha
Set con = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
linha = 0
con.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("Northwind.mdb")
rs.Open "SELECT ProductID, ProductName, UnitPrice, UnitsInStock FROM Products ORDER BY ProductName", con, 3, 1
%>


<h2>Acessando uma base Access com ASP 3.0</h2>
<table id="mytable" cellspacing="0"> 
  <tr> 
    <th scope="col" abbr="Dual 1.8">ProductID</th> 
    <th scope="col" abbr="Dual 2">ProductName</th> 
<th scope="col" abbr="Dual 2.5">UnitPrice</th> 
<th scope="col" abbr="Dual 2.5">UnitsInStock</th>     
  </tr> 


  <% 
  Do While Not rs.Eof
   If linha = 0 Then
Response.Write("<tr>")
Response.Write("<td>" & rs.Fields("ProductID") & "</td>")
Response.Write("<td>" & rs.Fields("ProductName") & "</td>")
Response.Write("<td>" & FormatNumber(rs.Fields("UnitPrice"), 2) & "</td>")
Response.Write("<td>" & rs.Fields("UnitsInStock") & "</td>")
Response.Write("</tr>")
linha = 1
Else
Response.Write("<tr>")
Response.Write("<td class='alt'>" & rs.Fields("ProductID") & "</td>")
Response.Write("<td class='alt'>" & rs.Fields("ProductName") & "</td>")
Response.Write("<td class='alt'>" & FormatNumber(rs.Fields("UnitPrice"), 2) & "</td>")
Response.Write("<td class='alt'>" & rs.Fields("UnitsInStock") & "</td>")
Response.Write("</tr>")
linha = 0
End If
   rs.MoveNext
  Loop
  %>
  
</table>
</body>
</html>

No escopo da tag "Head" da página, fizemos uma referência ao arquivo de estilos "styles.css". Até o momento, o ficheiro não existe. Vamos criá-lo agora. Utilizando o mesmo editor de texto, crie um arquivo com este nome e codifique o mesmo com o trecho a seguir. O detalhe é que o arquivo CSS deve ser criado no mesmo diretório da página ASP.

body {
font: normal 11px auto "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
color: #4f6b72;
}

a {
color: #c75f3e;
}

#mytable {
width: 700px;
padding: 0;
margin: 0;
}

caption {
padding: 0 0 5px 0;
width: 700px;  
font: italic 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
text-align: right;
}

th {
font: bold 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
color: #4f6b72;
border-right: 1px solid #C1DAD7;
border-bottom: 1px solid #C1DAD7;
border-top: 1px solid #C1DAD7;
letter-spacing: 2px;
text-transform: uppercase;
text-align: left;
padding: 6px 6px 6px 12px;
background: #CAE8EA url(images/bg_header.jpg) no-repeat;
}

th.nobg {
border-top: 0;
border-left: 0;
border-right: 1px solid #C1DAD7;
background: none;
}

td {
border-left: 1px solid #C1DAD7;
border-right: 1px solid #C1DAD7;
border-bottom: 1px solid #C1DAD7;
background: #fff;
padding: 6px 6px 6px 12px;
color: #4f6b72;
}


td.alt {
background: #F5FAFA;
color: #797268;
}

th.spec {
border-left: 1px solid #C1DAD7;
border-top: 0;
background: #fff url(images/bullet1.gif) no-repeat;
font: bold 10px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
}

th.specalt {
border-left: 1px solid #C1DAD7;
border-top: 0;
background: #f5fafa url(images/bullet2.gif) no-repeat;
font: bold 10px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
color: #797268;
}

Já temos todas as definições da página, e seus devidos estilos ajustados no arquivo CSS. Para testar, hospede os arquivos em um servidor web local (ou remoto) e digite a URL no browser para visualizar o resultado. 


A aparência final da página, ganhou um aspecto profissional que lembra os templates pré-definidos do controle GridView em ASP.NET. Fico por aqui, e até a próxima!

Nenhum comentário:

Postar um comentário

Deixe aqui seu comentário