msdn15_capa.jpg

Clique aqui para ler todos os artigos desta edição

 

Explore o DataReader

por Israel Aéce

Este artigo discute

Este artigo usa as seguintes tecnologias:

·          Acesso a Dados

·          Utilização do objeto DataReader

·          Características do DataReader

·          Performance e Boas Práticas

   Visual Basic .NET e Visual C# .NET

 

Download:

----

Chapéu

DataReader

 

 

Há aplicações as quais necessitam dos dados sempre em tempo real, apresentando o conteúdo mais atualizado possível ao usuário. Muitos clientes necessitam ainda de uma forma rápida para diminuir o tempo de espera de uma determinada solicitação.

Tendo este cenário, temos a meta de desenvolvermos um software que seja bastante eficiente na busca e exibição de dados ao cliente. Este artigo explicará como e quais as melhores práticas, tanto para resgatar dados da base de dados quanto para manipular e exibí-los.

A Plataforma .NET fornece um objeto chamado DataReader, o qual está contido dentro do Namespace System.Data e que por sua vez tem como finalidade resgatar os dados da base de dados de forma extremamente rápida. Como o DataReader é uma espécie de cursor e “caminha” somente para frente, seus dados são somente para leitura, não sendo possível fazermos nada mais com estes dados a não ser exibi-los ao usuário final. Em uma linguagem mais técnica dizemos que o DataReader é foward-only (somente avança) e read-only (somente leitura).

 

A Interface IDataReader

Esta é a Interface base que deve ser implementanda quando um novo DataReader é criado. Ele contém 3 propriedades (veja a Tabela 1) e 4 métodos (veja a Tabela 2) que devem ser implementados nas classes que implementar esta Interface.

 

Tabela 1 - Propriedades da Interface IDataReader

Depth

Retorna um valor maior que zero (0) caso existam linhas (rows). No caso do SQL Server, sempre será retornado 0, já que o mesmo não suporta esta funcionalidade

HasRows *

Esta propriedade (ReadOnly) retorna True se existe um ou mais registros, e False caso o DataReader não retorne nenhum registro

IsClosed

Verifica se o leitor está aberto ou fechado

RecordsAffected

Retorna o número de linhas modificadas, inseridas ou excluídas através da execução de SQL Statements

 

* A propriedade HasRows foi introduzida apenas na versão 1.1 do .NET Framework. Como as Interfaces são imutáveis, essa propriedade foi criada e implementada nas classes que implementam IDataReader, fazendo assim parte da classe e não da Interface.

 

Tabela 2 - Métodos da Interface IDataReader

Close

Fecha o objeto IdataReader

GetSchemaTable

Retorna um objeto do tipo DataTable contendo as descrições das colunas contidas no DataReader

NextResult

Utilizado para processar múltiplos SQL Statements. Retorna True caso encontre um Statements e False caso contrário ...

Quer ler esse conteúdo completo? Tenha acesso completo