|
|
|
||||||||||||||||||||||
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Parceiros - CSS para Web Design - S.O.S Designers - Slackware-Brasil - Crie seu Web site - Oficina da Net |
Percorrido genérico por um recordset com ASPScript ASP que realiza um percorrido por um conjunto de registros ou recordset (RS), mostrando todos os registros e todos os campos de cada registro. Neste workshop de ASP vamos realizar uma consulta a uma tabela de um banco de dados para poder tirar um conjunto de registros. Logo, vamos fazer um percorrido por esse conjunto de registros genéricos, sem importar os nomes dos campos e o número de registros ou de campos, mostrando todos os dados extraídos no recordset. A consulta que realizarmos sobre a tabela será indiferente, ou seja, o script está preparado para realizar o percorrido seja qual for o conjunto de registros resultante e os nomes dos campos.
O objetivo é mostrar todos os dados do recordset em uma tabela. Na primeira fila da tabela colocaremos os nomes dos campos que tem cada registro e nas seguintes filas, os valores dos campos de cada registro obtido na consulta. Lembremos que as explicações sobre conectar e trabalhar com um banco de dados estão em nosso manual de ASP. O primeiro pedaço de código é uma conexão com o banco de dados por meio de DSN e a execução de uma sentença SQL. 'conecto BD e gero RS set conn = server.createobject("adodb.connection") conn.open "meuDSN" sSQL="select * from tabela" set rs=conn.execute(sSQL) Uma vez criado o recordset na variável "rs", temos que escrever o cabeçalho da tabela com os nomes dos campos que tem cada registro recebido. 'nomes dos campos como cabecalho da tabela response.write "<table border='1'><tr>" for i = 0 to rs.fields.Count - 1 response.write "<th align='center' bgcolor='#eeeeee'>" response.write rs.fields(i).name response.write "</th>" next response.write "</tr>" No código anterior se realizou um percorrido a cada um dos campos do primeiro registro do recordset e para cada um deles foi escrito seu nome, armazenando em rs.fields(i).name, a propriedade name do campo. Assim, mostraremos uma célula por cada nome dos campos do registro. O passo seguinte será mostrar o conteúdo de cada um dos registros, realizando um percorrido genérico por todo o recordset. 'agora, para cada registro while not rs.EOF response.write "<tr>" 'mostro todos os campos que tem for i = 0 to rs.fields.Count - 1 response.write "<td>" & rs.fields(i) & "</td>" next response.write "</tr>" rs.movenext wend response.write "</table>" O loop "while not rs.EOF" é para percorrer cada registro. Para cada registro cria-se uma fila. Logo, acrescenta-se outro loop "for i = 0 to rs.fields.Count" para percorrer cada campo do registro. Para cada campo escreve-se o valor em uma coluna. Para terminar, fecha-se a tabela. O script já terminou. Só nos resta fechar as conexões com o banco de dados. 'fecho o bd e o recordset rs.close conn.Close Podemos ver o código fonte completo a seguir: <% 'conecto BD e gero RS set conn = server.createobject("adodb.connection") conn.open "meuDSN" sSQL="select * from tabela" set rs=conn.execute(sSQL) 'nomes dos campos como cabecalho da tabela response.write "<table border='1'><tr>" for i = 0 to rs.fields.Count - 1 response.write "<th align='center' bgcolor='#eeeeee'>" response.write rs.fields(i).name response.write "</th>" next response.write "</tr>" 'agora, para cada registro while not rs.EOF response.write "<tr>" 'mostro todos os campos que tem for i = 0 to rs.fields.Count - 1 response.write "<td>" & rs.fields(i) & "</td>" next response.write "</tr>" rs.movenext wend response.write "</table>" 'fecho o bd e o recordset rs.close conn.Close %>
Autoria e outras referências sobre este artigo Dentro deste artigo: + 1 manual relacionado + 2 Categorias relacionadas + 1 Comentário sem rever
Manuais relacionados com este artigo Dentro de Workshop de ASP Seguinte: Intranets com ASP Categorias relacionadas Através das categorias do nosso diretório podem ser encontrados outros tipos de recursos relacionados com este artigo: + Entrar em ASP+ Entrar em Scripts em ASP Comentário sem rever
|
| Sobre nós | Copyright | Anuncie | Entrar em contato | <criarweb> |