A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Tecnologias Web ADO.NET Enrique Pimentel Leite de Oliveira Rodrigo Cristiano Silva

Apresentações semelhantes


Apresentação em tema: "Tecnologias Web ADO.NET Enrique Pimentel Leite de Oliveira Rodrigo Cristiano Silva"— Transcrição da apresentação:

1 Tecnologias Web ADO.NET Enrique Pimentel Leite de Oliveira Rodrigo Cristiano Silva

2 Agenda O que é o ADO.NET Problemas com Estado Estrutura do ADO.NET 2.0 Data Providers SQL Server Data Provider SqlConnectionSqlCommandSqlDataReaderSqlDataAdapterDataSet Acesso Direto Acesso Desconectado TableAdapter

3 O que é o ADO.NET O ADO.NET permite interagir com bancos de dados relacionais e outras fontes de dados O ADO.NET é a tecnologia que as aplicações ASP.NET usam para se comunicar com bancos de dados, caso precisem adicionar, atualizar, apagar ou recuperar registros O ADO.NET possui uma família de objetos que provêm todas essas funcionalidades

4 Estrutura do ADO.NET O ADO.NET é formado por um conjunto de objetos que podem ser divididos em dois grupos: Aqueles que são usados para armazenar e gerenciar dados, tais como DataSet, DataTable, DataRow e DataRelation Aqueles que são usados para conectar à uma fonte de dados específica, tais como Connection, Command, DataReader, DataAdapter e TableAdapter Existem vários conjuntos de objetos para conectar à diversas fontes de dados. Cada um desses conjuntos é chamado de ADO.NET Data Provider

5 Estrutura do ADO.NET 2.0

6 Data Providers A Microsoft oferece os quatro providers abaixo: SQL Server provider: oferece acesso otimizado ao banco de dados SQL Server (versão 7.0 ou superior) OLE DB provider: oferece acesso à qualquer fonte de dados que tenha um driver OLE DB Oracle provider: oferece acesso otimizado ao banco de dados Oracle (versão 8i ou superior) ODBC provider: oferece acesso à qualquer fonte de dados que tenha um driver ODBC

7 ADO.NET Namespaces System.DataSystem.Data.CommonSystem.Data.OleDbSystem.Data.SqlClientSystem.Data.SqlTypesSystem.Data.OracleClientSystem.Data.Odbc

8 Objetos do SQL Server Data Provider SqlConnection Antes de recuperar ou atualizar dados, é necessário criar uma conexão com a fonte de dados Quando se cria um objeto Connection, é necessário definir um valor para sua propriedade ConnectionString A string de conexão para um objeto SqlConnection é bastante similar ao exemplo abaixo: myConnection.ConnectionString = Data Source=localhost; Initial Catalog=Pubs; Integrated Security=SSPI; Data Source: indica o nome do servidor onde a fonte de dados está localizada Initial Catalog: é o nome do banco de dados que a conexão acessará Integrated Security: indica que será usado o usuário do Windows com o qual roda a aplicação Web para se conectar ao SQL Server

9 Objetos do SQL Server Data Provider SqlCommand Objetos Command representam comandos SQL Para usar um Command, é necessário definir as propriedades CommandText e Connection SqlDataReader Permite recuperar informações diretamente do banco de dados Suporta acesso forward-only e read-only Deve ser a primeira escolha para acessos somente leitura, devido à sua natureza otimizada para esse tipo de acesso SqlDataAdapter Usado no modelo de acesso à dados desconectado Pode armazenar os quatro comandos básicos SQL em suas propriedades: SelectCommand, InsertCommand, UpdateCommand e DeleteCommand Dessa maneira, um único DataAdapter é usado para múltiplas tarefas

10 DataSet É um banco de dados relacional na memória É um dos principais objetos do modelo de acesso à dados desconectado Suas principais características são: Trabalha de forma desconectada Pode armazenar mais de uma tabela Pode manter relacionamentos entre tabelas Permite manter a conexão com o bando de dados fechada, tendo em vista que possibilita a manipulação dos dados na memória

11 DataSet

12 Acesso Direto

13 Acesso Desconectado

14 DataSet Tipado Qual é a diferença entre um DataSet e um DataSet tipado? Um dataset tipado traz consigo toda a estrutura das tabelas, possibilitando o acesso às colunas do banco de dados como se fossem propriedades do dataset, o que não deixa de ser, uma vez que um dataset tipado nada mais é do que uma classe que o visual studio cria colocando o nome de cada coluna de cada tabela (real) como uma propriedade desta classe (que tem o mesmo nome do arquivo xsd criado).

15 TableAdapter A versão 2.0 do ADO.NET implementa algumas inovações no acesso a dados. Uma das principais é o TableAdapter De forma simplificada, os TableAdapters fornecem comunicação entre a aplicação e o banco de dados, através da criação de uma camada (classe) para acesso aos dados Mais especificamente, um TableAdapter conecta a um banco de dados, executa instruções SQL ou stored procedures e: Retorna um DataTable preenchido com os dados ou, Preenche um DataSet ou DataTable com os dados retornados Além disso, podem ser utilizados para enviar dados da aplicação para o banco de dados

16 Representação do TableAdapter

17 TableAdapter Para criar um TableAdapter, é necessário criar antes um DataSet Tipado, que é um DataSet com estrutura de dados fortemente definida através de um arquivo.xsd (XML Schema) As classes dos TableAdapters são geradas em um namespace diferente, específico para cada Dataset Por exemplo, se na aplicação existir um dataset chamado NorthwindDataSet, os TableAdapters associados com os DataTables poderiam estar no namespace NorthwindDataSetTableAdapters

18 Acessando um TableAdapter Para acessar um TableAdapter específico através de código, é necessário instanciar um objeto do TableAdapter. Exemplo: // Instanciando um DataSet Tipado para armazenar os dados NorthwindDataSet northwindDataSet = new NorthwindDataSet(); // Instanciando um TableAdapater para recuperar os dados NorthwindDataSetTableAdapters.CustomersTableAdapter customersTableAdapter = new NorthwindDataSetTableAdapters.CustomersTableAdapter(); // Recuperando os dados do banco customersTableAdapter.Fill(northwindDataSet.Customers);

19 Detalhes sobre o TableAdapter A classe TableAdapter não é parte da.NET Framework, e por isso, não é possível encontrá-la na documentação ou no Object Browser Ela é criada em tempo de projeto através do wizard de criação do DataSet O nome atribuído ao TableAdapter quando criado, é baseado no nome da tabela do banco de dados Dessa forma, pode se dizer que um TableAdapter é apenas a implementação de uma camada de acesso a dados, utilizada para facilitar a manipulação das informações provenientes do banco de dados

20 Métodos e Proriedades do TableAdapter Os seguintes métodos e propriedades são normalmente utilizados pelos TableAdapters: MembroDescrição TableAdapter.Fill Preenche o DataTable associado ao TableAdapter com o resultado do comando SELECT TableAdapter.Update Envia as alterações para o banco TableAdapter.GetData Retorna um novo DataTable preenchido com os dados TableAdapter.Insert Cria uma nova linha no DataTable TableAdapter.ClearBeforeFill Determina se um DataTable deve ser limpo antes da chamada do método Fill

21 Exercícios Criar um programa que possibilite Cadastrar, alterar e excluir usuários de uma base de dados. Criar um sistema capaz de validar usuários através do banco de dados Exibir informações retornadas do TableAdapter (DataTable por exemplo) no GridView Utilizar ObjectDataSource para realizar essa tarefa

22 Bibliografia TableAdapter overview. Disponível em: us/library/bz9tthwx(VS.80).aspx us/library/bz9tthwx(VS.80).aspx us/library/bz9tthwx(VS.80).aspx ASP.NET Data Access Layer com TableAdapter. Disponível em: sao.asp?id_ac=1063 sao.asp?id_ac=1063 sao.asp?id_ac=1063 Building a DAL using Strongly Typed TableAdapters and DataTables in VS 2005 and ASP.NET 2.0. Disponível em: 15/ aspx 15/ aspx 15/ aspx


Carregar ppt "Tecnologias Web ADO.NET Enrique Pimentel Leite de Oliveira Rodrigo Cristiano Silva"

Apresentações semelhantes


Anúncios Google