Seleções em uma tabela

Forma simples de realizar seleções dentro de uma tabela. Exemplos práticos.

Por Rubén Alvarez


Publicado em: 15/12/04
Valorize este artigo:
Dentro de um banco de dados, organizado por tabelas, a seleção de uma tabela inteira ou de um certo número de registros é uma operação rotineira.

A partir desta seleção pode-se posteriormente efetuar toda uma série de mudanças ou então, realizar uma simples leitura.

O seguinte script nos permite realizar a leitura da tabela clientes, contida em nosso banco de dados. À primeira vista tudo pode nos parecer um pouco complexo, mas nada mais longe da realidade.

<HTML>
<HEAD>
<TITLE>Leitura de registros de uma tabela</TITLE>
</HEAD>
<BODY>
<h1><div align="center">Leitura da tabela</div></h1>
<br>
<br>
<%
'Antes de mais nada há que instanciar o objeto Connection
Set Conn = Server.CreateObject("ADODB.Connection")

'Uma vez instanciado Connection podemos abri-lo e lhe atribuímos ao banco de dados onde vamos efetuar as operações
Conn.Open "Meubanco"

'Agora criamos a instrução SQL que nos servirá para falar ao BD
sSQL="Select * From Clientes Order By nome"

'Executamos a ordem
set RS = Conn.Execute(sSQL)

'Mostramos os registros%>
<table align="center">
<tr>
<th>Nome</th>
<th>Telefone</th>
</tr>
<%
Do While Not RS.Eof
%>
<tr>
<td><%=RS("nome")%></td>
<td><%=RS("telefone")%></td>
</tr>
<%
RS.MoveNext
Loop

'Fechamos o sistema de conexão
Conn.Close
%>

</table>

<div align="center">
<a href="insertar.html">Acrescentar um novo registro</a><br>
<a href="actualizar1.asp">Atualizar um registro existente</a><br>
<a href="apagar1.asp">Apagar um registro</a><br>
</div>

</BODY>
</HTML>


Se o que desejamos é interrogar um banco de dados, o primeiro que há que fazer é obviamente estabelecer a conexão com ele. Isto se faz a partir do objeto Connection o qual é "invocado" ou mais tecnicamente dito instanciado por meio da primeira instrução na qual o objeto toma o nome arbitrário da variable Conn .

O passo seguinte é abrir o objeto e atribuir ao banco de dados com o qual deve entrar em contato. Neste caso, chamamos o banco de Meubanco. Este deve de ser o mesmo nome com o qual a batizamos quando configuramos os conectores ODCB, ademais, este nome não tem porque coincidir necessariamente com o nome do arquivo.

Uma vez criada a conexão ao nosso banco de dados, o passo seguinte é fazer nossa petição. Esta petição pode ser formulada primeiramente e armazenada em uma variável (sSQL) para, a seguir, ser executada por meio da instrução seguinte.

A petição que realizamos neste caso é a de selecionar todos os campos que existem nas tabela clientes (* é um asterístico) e ordenar os resultados por ordem alfabética em relação ao campo nome.

O resultado de nossa seleção é armazenado na variável RS em forma de tabela. Para ver a tabela o que há que fazer agora é "passear" por esta tabela "virtual" RS a qual possui uma espécie de cursor que, a menos que se especifique outra coisa, aponta ao primeiro registro da seleção. O objetivo agora é fazer deslocar-se ao cursor ao longo da tabela para poder lê-la em sua totalidade. A forma de fazê-lo é a partir de um loop Do While o qual foi explicado anteriormente e que o único que faz é executar as instruções compreendidas entre o Do e o Loop sempre que a condição proposta (Not RS.Eof) seja verdadeira. Isto se traduz como "Executar este conjunto de instruções enquanto a tabela de resultados (RS) não chegar ao final" (Eof, End of File).

As instruções incluídas no loop são, por um lado, a impressão no documento dos valores de determinados campos ( =RS("nome do campo")) e por outro, saltar de um registro ao outro mediante a instrução RS.MoveNext.

Todo este conjunto de instruções ASP vem em combinação com um código HTML que permite sua visualização em forma de tabela. Ademais, foram incluídos uns links que apontam para outra série de scripts que veremos mais adiante e que formarão em conjunto uma aplicação.

É interessante ver o código fonte resultante deste script. Neste caso o código que vê o cliente é sensivelmente mais simples.






Usuários :    login / registro

Manuais relacionados
Categorias relacionadas
O autor

Home | Sobre nós | Copyright | Anuncie | Entrar em contato