C# - ADO .NET para Iniciantes - I (início do minicurso)
Este é um minicurso sobre ADO .NET para iniciantes usando a linguagem C#.
Os requisitos mínimos para que você aproveite este minicurso é possuir um pouco de conhecimento sobre lógica de programação.
Se você não conhece a linguagem C# pode ler os seguintes artigos :
Se você já conhece VB .NET e esta querendo a aprender C# sugiro que você leia o meu artigo:
O material necessário para acompanhar o curso é: (Irei utilizar o Visual C# 2008 Express Edition mas os conceitos valem para qualquer versão do Visual Studio inclusive a 2013)
1-
Visual C# 2008 Express
Edition
2-
SharpDevelop 2.2
3- SQL Server 2005 Express Edition
Todos esses programas são gratuitos e portanto você não vai gastar um centavo neste curso.
Durante o curso vamos desenvolver uma aplicação com acesso a dados usando C# de forma que você irá fazendo e aprendendo na prática os principais conceitos básicos envolvidos.
Mas chega de papo e vamos ao que interessa...
O que é ADO .NET
ADO .NET é a nova tecnologia para acesso a dados da plataforma .NET estando integrada ao .NET Framework e oferecendo diversas classes que permitem realizar praticamente todas as tarefas relacionadas com o acesso e manutenção de dados.
ADO .NET oferece suporte a uma variedade de opções para desenvolvimento de soluções com acesso a dados que permitem a comunicação com qualquer fonte de dados, desde os já conhecidos gerenciadores de banco de dados relacionais (SGBD) como : SQL Server, MySQL, FireBird, Oracle, Sybase, Access, XML, arquivos textos, etc.
Os componentes considerados os pilares da ADO.NET são o DataSet e os provedores .NET que são um conjunto de componentes que incluem os objetos :
Connection - responsável por efetuar a conexão com o banco de dados
Command - responsável por executar comandos contra o banco de dados;
DataAdapter - é utilizado para preencher o objeto DataSet;
Através da ADO.NET podemos acessar dados de três maneiras básicas: OLE DB , SQL e ODBC.
Os
provedores de dados ADO .NET são livrarias de classes que permitem uma maneira
comum de interagir com uma fonte específica de dados. Cada livraria possui um
prefixo que indica qual provedor ela suporta. Veja abaixo os principais
provedores:
Nome do Provedor |
API prefixo |
Descrição |
ODBC Data Provider | Odbc | Fonte de dados com uma interface ODBC interface. Geralmente usada para banco de dados antigos; |
OleDb Data Provider | OleDb | Fonte de dados que expõe uma interface OleDb interface, ou seja: Access ou Excel; |
Oracle Data Provider | Oracle | Para banco de dados Oracle; |
SQL Data Provider | Sql | Para interação com o Microsoft SQL Server; |
Nota: Também existem provedores
fornecidos por terceiros para MySQL, PostGreeSQL, FireBird, etc.
Cada objeto possui uma versão para cada uma das maneiras aqui mencionadas, assim temos os objetos :
OleDbConnection, OleDbCommand, OleDbDataReader, OleDataAdapter;
SqlConnection, SqlCommand, SqlDataReader, SqlDataAdapter;
OdbcConnection, OdbcCommand,etc.
Nota: Temos também os provedores fornecidos por terceiros como o .NET Connector para o MySQL.
Abaixo uma figura ilustrando isto:
Existem duas maneiras básicas de você realizar a conexão com uma fonte de dados com ADO .NET:
1- ) Usando um DataSet
Este modo é conhecido como modo desconectado.
O objeto DataSet veio para substituir com vantagens o objeto recordset (ADO) e, guarda poucas similaridades com o objeto recordset. Enquanto o objeto recordset representa uma coleção de tabelas de dados O objeto DataSet representa uma cópia do banco de dados em memória.
A classe DataSet é membro do namespace System.Data e representa o primeiro dos dois maiores componentes da arquitetura ADO.NET os outros membros seriam os provedores Data .NET. Podemos resumir os atributos do DataSet como segue:
O DataSet fornece as principais funcionalidades para criar aplicações para banco de dados desconectados , embora suporte também o modelo conectado através de leitores de dados (DataReader).
A classe DataSet é derivada da classe System.ComponentModel.MarshalByValueComponent da qual ela recebe a habilidade de ser serializada , incluída na caixa de ferramentas do VS.NET e visualmente desenhada em um descritor. Os principais métodos da classe DataSet são :
Membro | Descrição |
Coleções | |
Relations | Uma coleção de relações hospedadas em um objeto DataRelationCollection que liga tabelas através de chaves estrangeira |
Tables | Uma coleção de tabelas que armazena os dados atuais |
Métodos | |
AcceptChanges | Grava todas as alterações para o DataSet |
Clear | Remove todas as linhas de todas as tabelas |
Clone | Faz uma cópia da estrutura mas não os dados de um DataSet |
Copy | Faz uma cópia a estrutura e os dados de um DataSet |
GetChanges | Retorna uma cópia do DataSet com apenas as colunas alteradas ou aquelas que coincidem com o filtro definido em DataRowState |
GetXml | Retorna uma representação exm XML dos dados |
GetXmlSchema | Retorna uma representação XML da estrutura de um DataSet |
HasChanges | Retorna um valor indicando que existe mudanças pendentes |
InferXmlSchema | Infere a estrutura de um DataSet baseada em um arquivo ou fluxo |
Merge | Mescla o DataSet com o provedor |
ReadXml | Carrega um esquema XML e dados para um DataSet |
ReadXmlSchema | Carrega um esquema XML para um DataSet |
Reset | Reverte o DataSet ao seu estado original |
WriteXML | Escreve os dados e o esquema XML para um arquivo ou fluxo de dados |
WriteXmlSchema | Escreve o esquema XML para um arquivo ou fluxo |
2- Usando um DataReader
Os objetos DataReader é uma das maneiras mais fáceis para ler os dados retornados pelos objetos Command . Eles permitem acessar e percorrer os registros no modo de somente leitura e somente para frente - forward-only .
O DataReader não oferece o acesso desconectado e não permite alterar ou atualizar a fonte de dados original sendo usado para obter rapidamente dados de apenas leitura. Apresenta poucos recursos mas seu desempenho é muito melhor do que o oferecido pelos DataSet.
As propriedades e métodos mais usadas dos objetos DataReader são :
Para criar um objeto DataReader usamos o método ExecuteReader de um objeto Command.
O objeto DataTable
Ao tratar com banco de dados não podemos deixar de pensar em tabelas e o objeto DataTable representa uma ou mais tabelas de dados em memória. Os objetos DataTable estão contidos no objeto DataSet e/ou DataView.
Abaixo temos uma relação das principais propriedades
do objeto DataTable:
O objeto DataView
O DataView tem a função de permitir a ligação dos dados de uma fonte de dados com a interface do usuário através do DataBinding . Através do DataView podemos filtrar, ordenar, pesquisar e navegar pelos dados oferecendo diversas visões de um mesmo conjunto de dados ao usuário.
Usamos o DataView para mostrar uma visão dos dados contidos em um DataTable , com isto você pode ter vários DataViews ligados a um mesmo DataTable , sendo que cada um exibe um visão diferente dos dados.
O objeto DataTable possui um DataView padrão que é acessado através da propriedade DefaultView.
As principais propriedades do objeto DataView são :
Creio que para um início já temos muita informação, na sequência irei mostrar como realizar uma conexão com um banco de dados usando ADO .NET com C#.
Eu sei é apenas C# mas eu gosto...
Veja os
Destaques e novidades do SUPER DVD Visual Basic
(sempre atualizado) : clique e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
|
Gostou ?
Compartilhe no Facebook
Compartilhe no Twitter
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#