1 / 24

ADO.NET Framework

ADO.NET Framework. INE 5612 – DSOOII Prof. Frank Siqueira - Turma 04238A Equipe: Jucemar , Rodrigo, William. Introdução ao ADO.net. Hoje há novas necessidades e desafios nos modelos de programação para acesso a dados em relação ao antigo modelo “cliente/servidor”.

hanne
Download Presentation

ADO.NET Framework

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ADO.NET Framework INE 5612 – DSOOII Prof. Frank Siqueira - Turma 04238A Equipe: Jucemar, Rodrigo, William

  2. Introdução ao ADO.net • Hoje há novas necessidades e desafios nos modelos de programação para acesso a dados em relação ao antigo modelo “cliente/servidor”. • Há um crescimento no número de aplicações Web que rodam no cliente, sendo assim não se pode manter uma conexão aberta durante muito tempo. • As aplicações hoje são desenvolvidas em multicamadas e há grandes desafios de como passar esses dados entre essas camadas.

  3. Introdução ao ADO.net • O modelo de programação atual pede que nós tenhamos um modelo desconectado. • O ADO.net foi criado pensado justamente nessas novas necessidades e desafios do novo modelo de programação. • Constitui-se, basicamente, em um conjunto de classes para trabalhar com dados. • Inclui ferramentas para se conectar a um banco de dados, executar comandos e recuperar os resultados. Os resultados são processados diretamente, colocados em um objeto DataSet e exibidos para o usuário . • ADO.NET é uma evolução do ADO (ActiveX Data Objects).

  4. Sistemas Operacionais compatíveis

  5. Características • É compatível com aplicações de cenários conectados; • É compatível com aplicações de cenários desconectados; • É um modelo de programação com suporte avançado para o XML; • Permite trabalhar com múltiplas fontes de dados diferentes ao mesmo tempo e de uma mesma maneira;

  6. Características • Totalmente integrado ao .NET Framework; • Como é nativo, sua API pode ser utilizada com as diversas linguagens que fazer parte do .NET Framework: Visual Basic, C#, entre outras; • É sucessor do ADO, porém mais flexível; • Possui um conjunto de Classes, Interfaces, Estruturas e Enumerações que gerem o aceso a dados dentro do .NET Framework;

  7. Compatibilidade com fontes de dados. Permite a comunicação com qualquer banco de dados relacionais entre outras fontes como arquivos CVS e Excel e etc.

  8. Arquitetura do ADO.net

  9. Arquitetura do ADO.net - DataProvider • São bibliotecas que possibilitam uma maneira comum de interagir com uma fonte específica de dados. • Cada biblioteca possui um prefixo que indica qual provedor ela suporta.

  10. DataProvider - Principais provedores

  11. Arquitetura do ADO.net - DataProvider • Connection: Usado para se conectar a base de dados • Command: Usado para criar comandos dentro da fonte de dados • DataReader: Fornece um acesso conectado somente-leitura e somente-para-frente a uma fonte de dados. • O DataReader efetua uma única passagem pelo conjunto de registros do banco da forma mais eficiente possível. São objetos que não podem ser diretamente instanciados. O DataReader é retornado pelo método ExecuteReader do objeto Command.

  12. Arquitetura do ADO.net - DataProvider • DataAdapter: Componentes encarregados de chamar os comandos de leitura, atualização, inclusão e exclusão de informações em uma fonte de dados pode ser usado para preencher um DataReaderou um DataSet. • O DataAdapter promove associação entre o provedor de dados .NET e o DataSet. É um mediador, que facilita a comunicação entre o banco de dados e o DataSet. O DataAdapter lê os dados do banco e os armazena dentro do DataSet através do método Fill. Ele também escreve as alterações efetuadas nos dados, a partir do DataSet, para que elas posteriormente sejam gravadas no banco através do método Update.

  13. Arquitetura do ADO.net - DataSet • DataSet: Fornece um representação relacional em memória de dados, sendo um conjunto completo de dados que incluem tabelas que contém dados, restrições de dados e relacionamentos entre as tabelas. O acesso é desconectado. • É o principal componente da arquitetura ADO.NET, armazenando dados do banco no lado do cliente. Funciona como uma coleção de uma ou mais tabelas, que forma os objetos DataTable. Cada DataTable corresponde a uma única tabela ou visão. Assim, um objeto do tipo DataSet simula a estrutura da base de dados à qual se efetuou a consulta.

  14. Arquitetura do ADO.net - DataSet • Criada para manipular os dados independente da fonte; • Pode receber fontes de dados de bancos de dados através do DataAdapter; • Pode trabalhar diretamente com arquivos XML; • Pode ainda trabalhar com fontes de dados diferentes dentro de um mesmo DataSet; • Permite manipular os dados, efetuando leituras e alterações necessárias no modelo desconectado, sem a necessidade de manter a conexão aberta com o banco de dados.

  15. Arquitetura do ADO.net - DataSet • DataRelationCollection: Permite a criação de relacionamentos entre as DataTables contidas dentro do DataSet. • Com tudo isso tem-se um modelo desconectado em memória algo muito parecido com que você possui em um banco de dados.

  16. Alteração na base - Desconectado

  17. Exemplos de Utilização – C# usingSystem.Data.SqlClient; // Instancia um objeto DataSet DataSetobjetoDataSet = newDataSet(); // Instancia um objeto conexão e passa dados para a conexão como parametros SqlConnectionconex = new SqlConnection(“Servidor, DB, User, Senha”); // Abre a conexão conex.Open(); // Instância um objeto DataAdapter especializado em Fontes de dados SQL SqlDataAdapteradapter = newSqlDataAdapter();

  18. Exemplos de Utilização – C# // Inicializa o atributo do objeto DataAdapter responsável pelas consultas ao BD passando como parametro a consulta e a conexão adapter.SelectCommand = newSqlCommand(“select * from Usuarios”, conex); //Cria a tabela Usuarios dentro do objeto DataSet e preeche ela com o resultado da consulta ao BD adapter.Fill(objetoDataSet,“Usuarios”); // Fecha a conexão com o servidor conex.Close();

  19. Exemplos de Utilização – C# //Retorna a tabela Usuários do objetoDataSet e armazena em uma variavel DataTabletabela =  objetoDataSet.Tables[“Usuarios"]; //Altera o campo cidade do primeiro usuário tabela.Rows[0][“cidade"] = “Florianopolis"; //Efetua a atualização da base de dados a partir do objetoDataAdapter adapter.Update(objetoDataSet);

  20. Histórico • ADO : ActiveX Data Objects (ADO) – mecanismo ComponentObjectModel criado pela Microsoft para que programas pudessem trocar informações com as bases de dados. • Pacote Microsoft Data Access Components (MDAC), disponibilizado gratuitamente, tem suporte a ASP, Delphi, PowerBuilder e VBA • ADO : aplicação em ambientes Cliente/Servidor com acesso simultâneo de vários usuários. Era utilizado em páginas dinâmicas desenvolvidas em ASP, que rodavam VBScript e JavaScript no servidor.

  21. ADO x ADO.NET • ADO : utilizava um conjunto comum de classes para executar conexões a bancos de dados, recuperar registros e efetuar atualizações nesse banco, executar procedures, etc. • ADO : basicamente três objetos, que no ADO.NET foram expandidos e especializados para suportarem as funcionalidades dos seus fornecedores de acesso. No esquema ao lado, “Xxx” pode ser alterado para Odbc, Sql, dentre outros. • ADO.NET : possui dois conjuntos de classes que são utilizadas para cessar os dados, dependendo de como eles estão armazenados. • ADO.NET : classes Disponibilizadas em pacotes diferentes. Para acessar um SQL Server, utiliza classes do pacote System.Data.SqlClient. Para acessar dados em outras fonts (como Excel, MySQL, Access, incluindo SQL Server), são utilizadas as classes do pacote System.Data.OleDbnamespace.

  22. ADO x ADO.NET • O ADO utiliza o objeto Recordset para navegar e manipular dados. O ADO.NET substituiu esse objeto por outros três : DataReader e DataAdapter (para connectedrecordsets), e DataSet (para disconnectedrecordsets). • O Recordsetfuncionacomoumaúnicatabela. Se for necessárioqueelacontenha dados de váriastabelasdiferentes, seránecessárioexecutar o comando JOIN paraquetodososregistrossejamreunidosemumaúnicarelação.

  23. ADO x ADO.NET

  24. Referências • http://www.macoratti.net/08/11/c_adn_1.htm • http://msdn.microsoft.com/pt-br/data/gg252014.aspx • http://www.macoratti.net/adn_bpu1.htm • http://www.dei.isep.ipp.pt/~jtavares/ADAV/downloads/guiao_ADO_dotNet.pdf • http://www.macoratti.net/08/11/c_adn_1.htm • http://msdn.microsoft.com/en-us/library/ms973217.aspx • http://support.microsoft.com/kb/183606/en-us?fr=1 • http://www.macoratti.net/d040901.htm • http://pt.wikipedia.org/wiki/ActiveX_Data_Objects • http://www.devguru.com/features/tutorials/adonet/AdoNet1.asp

More Related