Menu

Apresentação
Cursinho de ASP
Colunas
Fórum
Links
Livros
Essencial
Hospedagem
Empregos  

Faça um Link
Artigo
Acesso a bancos de dados .

Conceitos básicos de acesso a bancos de dados

1 . Introdução
2 . Conexão
3 . A linguagem SQL
4 . Acesso aos dados
5 . Encerrar as conexões
6 . Adovbs.inc

O acesso a bancos de dados é um dos recursos mais utilizados nas páginas ASP, a facilidade com que se pode criar um site dinâmico fica claro neste artigo no qual veremos os conceitos básicos sobre conexão a bancos de dados.

Introdução

As páginas ASP com acesso a dados permitem interagir com a informação de uma base de dados seja para obter informação e mostrá-la ao usuário ou para atualizar seu conteúdo.

São muitas as aplicações deste conceito nos sistemas de informação atuais por exemplo, uma empresa que vende seus artigos pela Internet deve dispor de páginas nas que se visualizem os dados de seus produtos, disponibilidade, preço, etc.. e armazenar os pedidos de seus clientes. Por tratar-se de informação em contínua atualização e um grande número de consultas a necessidade de uma base de dados é indispensável.

Para conectar-se à uma base de dados, as páginas ASP utilizam a tecnologia ADO (ActiveX Data Objects) que pode acessar sistemas de administração de bancos de dados compatíveis ODBC (entre os quais SQL Server, Access, Informix ou Oracle.)

Conexão

Podem utilizar-se dois sistemas de conexão às bases de dados:

  • Com DSN
  • Sem DSN

Com DSN

Este sistema consiste em definir um identificador da conexão mediante o driver ODBC acessível no Painel de Controle. Posteriormente, já nas páginas ASP, se faz o acesso mediante uma string de conexão que inclui o identificador anteriormente citado.

Para criar um DSN no Windows, clicar no botão inicio e selecione a opção Painel de Controle do menu Configuração. Estando no Painel de Controle selecione Fontes de dados ODBC e vá para a pasta DSN do Sistema. Selecione a base de dados que quer incluir e defina um nome para a conexão e a localização física da base de dados

Sem DSN

Este sistema requer que seja colocado o arquivo da base de dados (habitualmente Access) num diretório do servidor. Desta forma, na conexão será utilizada uma string um pouco mais complexa já que devem identificar-se tanto o driver como o diretório físico completo de base de dados.

Estes são os 3 passos para realizar a conexão

  • Criar o objeto para conectar-se à base de dados mediante a instrução Server.CreateObject("ADODB.Connection")
  • Definir a conexão (com/sem DNS), mediante a instrução objConn.ConnectionString
  • Abrir a conexão mediante a instrução: objConn.Open
Instruções de conexão à uma base de dados
<% 
<font size="2">  Dim objConn 

' Criação do objeto que realiza a conexão à base de dados 
  Set objConn = Server.CreateObject("ADODB.Connection") 

' Fornecer ao objeto a informação correspondente à conexão ODBC a utilizar mediante DNS 
  objConn.ConnectionString = "DSN=bdProgramacao" 

' Sem DNS 
  objConn.ConnectionString = "DBQ=C:\meus documentos\program.mdb;DRIVER={MS Access (*.mdb)}" 

' Abrir a conexão 
  objConn.Open </font>
%>

A linguagem SQL

Mediante a linguagem SQL (Structured Query Language) podemos interagir com os gerenciadores de base de dados relacionais para obter e modificar a informação armazenada na base de dados.

A informação numa base de dados é armazena em tabelas que por sua vez se compõe de colunas ou campos. Para realizar uma consulta à uma tabela deve-se utilizar a instrução SELECT. Em uma consulta básica na clausula SELECT se indicam as colunas a visualizar, na clausula FROM, a tabela da qual obter os dados e por último a clausula WHERE se indicam as restrições a aplicar.

Instruções SQL de CONSULTA
SELECT *    FROM clientes WHERE cidade="Brasília" 
SELECT nome FROM produtos WHERE preço > 2000

As operações de incluir, atualizar e excluir informação da base de dados também se realizam mediante instruções SQL concretamente utilizaremos INSERT, UPDATE y DELETE respectivamente.

Por exemplo, a sentença UPDATE é composta da clausula SET para indicar o novo valor dos campos e WHERE para indicar os registros nos que se deseja realizar a atualização.

Instruções SQL de modificação: INSERT
INSERT INTO Produtos (nome, preço, distribuidor) 
       VALUES ("Auriculares", 1730, "batech")

Instruções SQL de modificação: UPDATE

UPDATE Produtos SET preço = preço + (0,02 * preço) WHERE distribuidor="ACME"

Instruções SQL de modificação: DELETE

DELETE FROM Produtos WHERE distribuidor="ACME"

Acesso aos dados

A continuação, temos as instruções para que desde uma página ASP possamos acessar a informação da base de dados e mostrá-la no navegador do usuário.

Suponha que temos uma tabela de produtos com as seguintes colunas: nome, preço e distribuidor.

na página ASP a ser criada aparecerão aqueles produtos cujo preço seja inferior à 30 reais e para realizar esta consulta utilizaremos o objeto ADODB.Recordset

Instruções de acesso aos dados;
<% 
Dim objConn 
Dim objRS 
Dim strSQL 

Set objConn = Server.CreateObject("ADODB.Connection") 
objConn.ConnectionString = "DSN=gestão" 

' Inicialização do objeto Recordset Set 
objRS = Server.CreateObject("ADODB.Recordset") 

' Construção da consulta com SQL 
strSQL = "SELECT nome, preço FROM produtos WHERE preço < 30" 

' Execução da consulta 
objRS.Open strSQL, objConn 
%>

Como resultado do código acima, o servidor obtém um conjunto de registros procedentes da base de dados e posiciona o cursor no primeiro deles. O objeto recordset proporciona mecanismos para acessar aos diferentes campos e mover o cursor entre os diferentes registros. O código abaixo mostra como faze-lo.

Visualização dos dados
Nome
Preço
<% 
' Loop até encontrar EOF (fim do cursor) 
Do Until objRS.EOF = True 
   Response.Write "<tr>" 
   ' objRS("nome") y objRS("preço") contém os valores 
   ' dos campos nome e preço da base de dados 
   Response.Write "<td>Nome= " & objRS("nome") & "</td>" 
   Response.Write "<td>Preço = " & objRS("preço") & "</td>" 
   Response.Write "</td></tr>" 
   ' mover o cursor para o próximo registro. 
   ' quando estiver no último registro EOF será True.
   objRS.MoveNext 
Loop 
%>

Encerrar as conexões

É uma prática recomendável fechar e eliminar os objetos recordset e de conexão criados na página ASP. Para isto utilizamos o código indicado a continuação:

Encerrar Conexão
<% 
  ' Fechar o objeto Recordset 
  objRS.Close 
  ' Eliminar o objeto Recordset 
  Set objRS = Nothing 
  ' Fechar o objeto da conexão 
  objConn.Close 
  ' Eliminar o objeto da conexão 
  Set objConn = Nothing 
%>

adovbs.inc

ADOVBS.INC é um arquivo que vem junto com o servidor Internet Information Server e no qual se definem todas aquelas constantes utilizadas com os objetos do ADO.

A inclusão de arquivos é muito útil para podermos ter um código legível e reutilizável duas características imprescindíveis em páginas de acesso a dados. Para isto utilizamos a instrução include virtual que pertence ao grupo de instruções do protocolo HTTP e cuja sintaxe é a seguinte:

	<!-- #include virtual="/adovbs.inc" --> 

Neste caso o arquivo ADOVBS.INC deverá estar armazenado no diretório raíz da sua aplicação.


Alex Morales Moliner (http://asp.programacion.net/)


Você terá uma completa lista de artigos de Alex Morales Moliner na página Autores e Artigos .
Retorna para a página anterior.

Transmitido : 10/09/2010 04:56:24  


Outdoor
www.vives.net
Fazenda Verde Sol
5º ENAPET
www.musicalango.com.br
Homenagem ao Cerrado

 

Copyright� 1999-2003Vicente Vives - Asp.br.cf é hospedado na DigiWeb