Escolar Documentos
Profissional Documentos
Cultura Documentos
NET
O ADO.NET (ActiveX Data Objects .NET) é um conjunto de classes do framework .NET para
comunicação com bases de dados. Com ele você pode se conectar a um banco de dados, rodar
queries, processar resultados, e até trabalhar com dados desconectados.
O principal objeto desconectado é o DataSet, ele serve como um banco de dados na memória,
guardando tabelas, registros, chaves e até relacionamentos. Com ele você pode ordenar, filtrar,
guardar versões diferentes de registros (como alterado e original) e navegar por tabelas
relacionadas. O DataSet também tem funcionalidades para trabalhar com dados no formato XML.
As principais classes do ADO.NET podem ser divididas em classes conectadas, que se comunicam
diretamente com a base de dados; e classes desconectadas, que independem de qualquer acesso
a uma base de dados.
Classes conectadas:
Classes desconectadas:
Provedores de acesso
No ADO.NET, existem classes para comunicação exclusiva com certas bases de dados. Esse tipo
de classe serve para otimizar o acesso ao banco de dados a que se relacionam. Já existem
provedores para OLE DB (que pode se conectar a diversas bases de dados através de OLE DB),
SQL Server (versão 7 em diante) e para o Oracle.
Você trabalha com esses provedores de acesso de maneira muito semelhante pois eles
implementam as mesmas interfaces bases padrões. O que muda é o namespace e o nome da
classe, como SqlConnection e OracleConnection.
Exemplo
Para criarmos um exemplo, necessitamos de uma base de dados. O SQL Server já vem com
bancos de dados de exemplo, então utilizaremos um deles: o pubs. Por simplicidade, mostraremos
como acessar e mostrar o conteúdo de uma tabela do pubs (a tabela authors) em um DataGrid de
uma página ASP.NET. O DataGrid, juntamente com o DataList e o Repeater são os principais
controles para mostrar dados em uma página ASP.NET (existe um DataGrid para Windows Forms
também).
Para o exemplo, criaremos uma conexão (SqlConnection), um comando para selecionar os dados
da tabela (SqlCommand) e um adaptador (SqlDataAdapter) para realizar a consulta e popular um
DataSet, que então será atribuído como fonte de dados para o DataGrid. O último passo é chamar
o método DataBind() do DataGrid, que irá montar a tabela com os dados na tela. No Visual
Studio.NET, crie um novo projeto Web em C#, arraste um DataGrid para a página
WebForm1.aspx, altere seu ID para dgAuthors (nas propriedades do controle) e cole o seguinte
código no código da página (você vai substituir o método PageLoad() e adicionar um novo,
PegaDados()):
/// <summary>
/// Evento chamado quando a página é carregada.
/// </summary>
/// <param name="sender">Quem chamou o evento.</param>
/// <param name="e">Dados do evento.</param>
private void Page_Load(object sender, System.EventArgs e) {
// pega os dados
DataSet ds = PegaDados();
Como estamos usando o provedor de acesso ao SQL Server, não esqueça do seguinte comando
no código:
using System.Data.SqlClient;