SlideShare uma empresa Scribd logo
1 de 39
Introdução
ADO.NET
Ricardo Guerra Freitas
Líder da Célula .NET RIO: http://groups.msn.com/celulanetrio
Email/MSN: guerra_rj@hotmail.com
Blog: http://thespoke.net/blogs/guerra_rj/default.aspx
Site do Curso para baixar os slides:
http://br.groups.yahoo.com/group/CursoDotNetSaoJose
Agenda
• Histórico do Acesso a Dados
• Conceitos
• Ambientes Conectados e Desconectados
• Modelo de Objetos
• Data Providers
• Objeto Connection
– String de Conexão
• Objeto Command
• Objeto DataReader
Histórico do Acesso a
Dados
Modelo de Acesso ODBC
Modelo de Acesso DAO
Modelo de Acesso RDO
Modelo de Acesso OLE DB
Modelo de Acesso ADO
Modelo de Acesso ADO.NET
Conceitos
O que é ADO.NET?
• ADO.NET é um conjunto de classes que
trabalham com dados.
• Ele provê:
– É evolucionário, sucessor do ADO
– Um sistema desenvolvido para ambientes
desconectados
– Um modelo de programação com suporte nativo a
XML
– Um conjunto de classes, interfaces, estruturas, e
enumerações que gerenciam o acesso a dados
usando o .Net Framework
ADO.NET suporta os seguintes
tipos de armazenamento de dados
• Não estruturado
• Estruturado e não hierárquico:
– Arquivos separados por delimitadores, Microsoft
Excel, arquivos do Microsoft Exchange, arquivos do
Active Directory, e outros
• Hierárquicos
– Documentos XML e outros.
• Bancos de dados relacionais
– SQL Server, Oracle, Access, e outros
Ambientes Conectados e
Desconectados
O que é um ambiente
conectado?
• É um ambiente que o usuário esta sempre
conectado ao banco de dados.
• Vantagens:
– É um ambiente com uma fácil implementação de
segurança
– Concorrência de dados é controlada
– Os dados estão normalmente atualizados
• Desvantagens:
– Temos que ter uma conexão permanente com a fonte
de dados
– Pouca escalabilidade.
O que é um ambiente
desconectado?
• Em um ambiente desconectado temos sempre um sub-
conjunto de dados da fonte de dados
• Os dados podem ser copiados e modificados
independentes da fonte de dados
• Vantagens:
– Você pode trabalhar a qualquer hora que for conveniente para
você, podendo ser conectado a fonte de dados e atualizar todas
as alterações
– Outros podem usar a conexão com a fonte de dados
– Em um ambiente desconectado temos mais escalabilidade e
performance
• Desvantagens:
– Os dados não estão sempre atualizados
– Conflitos decorridos da concorrência são mais difíceis de serem
resolvidos
Evolução do acesso a dados
Modelo de Objetos
Evolução do ADO para
ADO.NET
O modelo de objetos do
ADO.NET
Objetos ADO.NET
Modelo de comandos em
ambiente conectado
1. Abrimos a conexão
2. Executamos o
SqlCommand
3. As linhas são
processadas para o
DataReader
4. Fechamos o
DataReader
5. Fechamos a conexão
Modelo de comandos em
ambiente desconectado
1. Abrimos a conexão
2. Preenchemos o DataSet
com o método Fill
3. Fechamos a conexão
4. Alteramos livremente o
DataSet
5. Abrimos a conexão
6. Atualizamos a fonte de
dados
7. Fechamos a conexão
Data Providers
O que é um .NET Data
Provider?
• Definição:
– Um .NET data provider é o conjunto de classes que
você usa para conectar a uma fonte de dados,
recuperar dados e atualizar os dados
• Tipos de .NET data providers:
– SQL Server .NET Data Provider
– OLE DB .NET Data Provider
– ODBC .NET Data Provider
– Outros
As classes .Net Data Providers
• XxxConnection. Por exemplo, SqlConnection
– XxxTransaction. Por exemplo, SqlTransaction
– XxxException . Por exemplo, SqlException
– XxxError. Por exemplo, SqlError
• XxxCommand. Por exemplo, SqlCommand
– XxxParameter. Por exemplo, SqlParameter
• XxxDataReader. Por exemplo, SqlDataReader
• XxxDataAdapter. Por exemplo,
SqlDataAdapter
• XxxPermission. Por exemplo,
SqlClientPermission
Com tantos Data Providers,
qual eu escolho?
• SQL Server .NET Data Provider
– Use para SQL Server versao 7.0 ou posterior
• OLE DB .NET Data Provider
• SQL Server 6.5, Microsoft Access, Oracle, outras
origens de dados compativeis com OLE DB
providers
• ODBC .NET Data Provider
• Origens de dados de sistemas legados que
sejam compativeis somente com ODBC drivers,
fora isso NUNCA use um driver ODBC.
Principais namespaces
relacionados:
• System.Data
• System.Data.Common
• System.Data.SqlClient
• System.Data.OleDb
• System.Data.SqlTypes
• System.Xml
Acesso a Bases de Dados
ADO .NET
• Namespace System.Data
• Modos de ter acesso a informação
• OLE DB – namespace System.Data.OleDb
• SQL - namespace System.Data.SqlClient
Aplicativo
.Net
Informação
Informação
SQL Server
Objectos
OLE DB
OLE DB
Objectos
OLE DB
TDS
Objeto Connection
Objeto Connection
• SqlConnection / OleDbConnection
• Parâmetros da string de conexão
– Connection timeout
– Data source
– Initial catalog
– Integrated security
– Password
– Persist security info
– Provider
– User ID
Dim strConn as string = "data source=localhost; " +
"initial catalog=northwind; " +
"integrated security=true"
Dim conn as new SqlConnection = SqlConnection(strConn)
O que é uma String de
Conexão?
• Uma String de Conexão define os
parametros requeridos to fazer a conexão
com uma origem de dados
• Parametros de uma String de Conexão:
– Provider (somente para OLE DB)
– Data Source
– Initial Catalog
– Integrated Security
– User ID/Password
– Persist Security Info
Como configurar a
String de Conexão?
• Você só pode definir a propriedade ConnectionString
quando a conexão estiver fechada
• Para alterar a string de conexão, primeiro você tem que
fechar a conexão para depois reabrir
• Exemplo de uma conexão com Microsoft Access
Dim cnNorthwind As New
System.Data.OleDb.OleDbConnection()
cnNorthwind.ConnectionString =
"Provider=Microsoft.Jet.OLEDB.4.0; Data
Source=SamplesNorthwind.mdb;”
• Aonde conseguir strings de conexão?
– http://www.connectionstrings.com/
Objeto Command
Objeto Command
• SqlCommand / OleDbCommand
• Executar comandos SQL
– ExecuteReader – executa comandos que devolvam linhas de
informação (ex: SELECT)
– ExecuteNonQuery – executa comandos que retornam dados (ex:
INSERT, UPDATE, DELETE)
– ExecuteScalar - retorna um valor único como resultado de uma
função agregada (ex: COUNT)
Dim com as new SqlCommand = SqlCommand()
com.Connection = conn
com.CommandText="Select * From Tabela;"
Dim Info as SqlDataReader = com.ExecuteReader()
Objeto DataReader
Objeto DataReader
• SqlDataReader / OleDbDataReader
• Percurso forward-only em modo read-only
• Propriedades e métodos mais usais
• FieldCount
• IsClosed
• Close
• GetString
• GetInt32
Dim Info as SqlDataReader = com.ExecuteReader()
DataGrid1.DataSource=Info
Promoção!!! De 40 reais por 30 reais,
SOMENTE PARA ALUNOS DA FACULDADE
SÃO JOSÉ
Learning Series BufaloInfo
• A Búfalo Informática e o grupo devASPNet tem o prazer de apresentar a
nova Learning Series BufaloInfo, a mais nova série de CDs com vídeos de E-
Learning sobre tecnologias Microsoft.
• Para iniciar a série estamos lançando o CD de treinamento
Desenvolvimento Web com ASP.NET
• Mais de 8 horas de vídeo aulas
• Demostrações detalhadas apresentadas por Dennes Torres
• Vídeos divididos em pequenas partes, com demonstrações que podem ser
reproduzidas
• Código fonte de cada demonstração no CD, em versão ANTES e DEPOIS,
permitindo a você reproduzir as demostrações e comparar com o resultado
disponível.
• Indicação de artigos e dicas técnicas ligadas aos assuntos apresentados no
CD
• Suporte técnico sobre os temas abordados nas vídeo aulas
• http://www.bufaloinfo.com.br/learningseries.asp
Evento Gratuito
• Segundo TechConference na Veiga de Almeida
na Tijuca, dias 12 e 19 de novembro
• Para se inscrever visite o site:
• http://www.bufaloinfo.com.br/techconference2/
Bom Final de Semana!!
Ricardo Guerra Freitas
Líder da Célula .NET RIO: http://groups.msn.com/celulanetrio
Email/MSN: guerra_rj@hotmail.com
Blog: http://thespoke.net/blogs/guerra_rj/default.aspx
Site do Curso para baixar os slides:
http://br.groups.yahoo.com/group/CursoDotNetSaoJose

Mais conteúdo relacionado

Semelhante a Introdução ao ADO.NET

Aula05 android persistencia
Aula05 android persistenciaAula05 android persistencia
Aula05 android persistenciaRoberson Alves
 
Livropythonmysql 091022073751-phpapp01
Livropythonmysql 091022073751-phpapp01Livropythonmysql 091022073751-phpapp01
Livropythonmysql 091022073751-phpapp01julianabdpaiva
 
Dsi 015 - poo e php - conexão com bancos de dados usando pdo
Dsi   015 - poo e php - conexão com bancos de dados usando pdoDsi   015 - poo e php - conexão com bancos de dados usando pdo
Dsi 015 - poo e php - conexão com bancos de dados usando pdoJorge Luís Gregório
 
Conectando seu banco de dados usando jdbc
Conectando seu banco de dados usando jdbcConectando seu banco de dados usando jdbc
Conectando seu banco de dados usando jdbcJeison Barros
 
PostgreSQL-Prático.pdf
PostgreSQL-Prático.pdfPostgreSQL-Prático.pdf
PostgreSQL-Prático.pdfArleiEvaristo
 
05 - Acesso e Manipulação de Dados através de Classes do ADO.NET
05 - Acesso e Manipulação de Dados através de Classes do ADO.NET05 - Acesso e Manipulação de Dados através de Classes do ADO.NET
05 - Acesso e Manipulação de Dados através de Classes do ADO.NETfilipe-lemos
 
Introdução a JPA (2010)
Introdução a JPA (2010)Introdução a JPA (2010)
Introdução a JPA (2010)Helder da Rocha
 
programacao-c-banco-de-dados
programacao-c-banco-de-dadosprogramacao-c-banco-de-dados
programacao-c-banco-de-dadosRaul Dias
 
Palestra DataFlow - II São Paulo Perl Workshop
Palestra DataFlow - II São Paulo Perl WorkshopPalestra DataFlow - II São Paulo Perl Workshop
Palestra DataFlow - II São Paulo Perl WorkshopAlexei Znamensky
 
Testando aplicações DataSnap
Testando aplicações DataSnapTestando aplicações DataSnap
Testando aplicações DataSnapAndreano Lanusse
 
Desenvolvimento Delphi
Desenvolvimento DelphiDesenvolvimento Delphi
Desenvolvimento Delphihildebertomelo
 

Semelhante a Introdução ao ADO.NET (20)

Aula1
Aula1Aula1
Aula1
 
Tema3.pptx
Tema3.pptxTema3.pptx
Tema3.pptx
 
Tema3.pptx
Tema3.pptxTema3.pptx
Tema3.pptx
 
Python 04
Python 04Python 04
Python 04
 
Aula05 android persistencia
Aula05 android persistenciaAula05 android persistencia
Aula05 android persistencia
 
Acessando o MySql com o Python
Acessando o MySql com o PythonAcessando o MySql com o Python
Acessando o MySql com o Python
 
Livropythonmysql 091022073751-phpapp01
Livropythonmysql 091022073751-phpapp01Livropythonmysql 091022073751-phpapp01
Livropythonmysql 091022073751-phpapp01
 
Dsi 015 - poo e php - conexão com bancos de dados usando pdo
Dsi   015 - poo e php - conexão com bancos de dados usando pdoDsi   015 - poo e php - conexão com bancos de dados usando pdo
Dsi 015 - poo e php - conexão com bancos de dados usando pdo
 
Conectando seu banco de dados usando jdbc
Conectando seu banco de dados usando jdbcConectando seu banco de dados usando jdbc
Conectando seu banco de dados usando jdbc
 
PostgreSQL-Prático.pdf
PostgreSQL-Prático.pdfPostgreSQL-Prático.pdf
PostgreSQL-Prático.pdf
 
Fundamentos de JDBC
Fundamentos de JDBCFundamentos de JDBC
Fundamentos de JDBC
 
Fundamentos de JDBC
Fundamentos de JDBCFundamentos de JDBC
Fundamentos de JDBC
 
05 - Acesso e Manipulação de Dados através de Classes do ADO.NET
05 - Acesso e Manipulação de Dados através de Classes do ADO.NET05 - Acesso e Manipulação de Dados através de Classes do ADO.NET
05 - Acesso e Manipulação de Dados através de Classes do ADO.NET
 
Introdução a JPA (2010)
Introdução a JPA (2010)Introdução a JPA (2010)
Introdução a JPA (2010)
 
Ado.net.exmplos.praticos
Ado.net.exmplos.praticosAdo.net.exmplos.praticos
Ado.net.exmplos.praticos
 
programacao-c-banco-de-dados
programacao-c-banco-de-dadosprogramacao-c-banco-de-dados
programacao-c-banco-de-dados
 
SQL Oracle
SQL OracleSQL Oracle
SQL Oracle
 
Palestra DataFlow - II São Paulo Perl Workshop
Palestra DataFlow - II São Paulo Perl WorkshopPalestra DataFlow - II São Paulo Perl Workshop
Palestra DataFlow - II São Paulo Perl Workshop
 
Testando aplicações DataSnap
Testando aplicações DataSnapTestando aplicações DataSnap
Testando aplicações DataSnap
 
Desenvolvimento Delphi
Desenvolvimento DelphiDesenvolvimento Delphi
Desenvolvimento Delphi
 

Mais de Ricardo Guerra Freitas

2006 - Microsot e Open Source uma visão comparativa dos modelos.ppt
2006 - Microsot e Open Source uma visão comparativa dos modelos.ppt2006 - Microsot e Open Source uma visão comparativa dos modelos.ppt
2006 - Microsot e Open Source uma visão comparativa dos modelos.pptRicardo Guerra Freitas
 
2006 - ConceitosDeOrientaçãoObjeto.ppt
2006 - ConceitosDeOrientaçãoObjeto.ppt2006 - ConceitosDeOrientaçãoObjeto.ppt
2006 - ConceitosDeOrientaçãoObjeto.pptRicardo Guerra Freitas
 
2006 - Tipos de Projeto & IDE do Visual Studio.ppt
2006 - Tipos de Projeto & IDE do Visual Studio.ppt2006 - Tipos de Projeto & IDE do Visual Studio.ppt
2006 - Tipos de Projeto & IDE do Visual Studio.pptRicardo Guerra Freitas
 
2006 - FrameWorkdotNET Ricardo Guerra.ppt
2006 - FrameWorkdotNET Ricardo Guerra.ppt2006 - FrameWorkdotNET Ricardo Guerra.ppt
2006 - FrameWorkdotNET Ricardo Guerra.pptRicardo Guerra Freitas
 
2006 - Distribuindo sua Aplicação.ppt
2006 - Distribuindo sua Aplicação.ppt2006 - Distribuindo sua Aplicação.ppt
2006 - Distribuindo sua Aplicação.pptRicardo Guerra Freitas
 
2006 - Introdução a Objetos Linguagem e Padrões.ppt
2006 - Introdução a Objetos Linguagem e Padrões.ppt2006 - Introdução a Objetos Linguagem e Padrões.ppt
2006 - Introdução a Objetos Linguagem e Padrões.pptRicardo Guerra Freitas
 
MoodleMoot 2023 - Ricardo Guerra - Plugins_v3.pptx
MoodleMoot 2023 - Ricardo Guerra - Plugins_v3.pptxMoodleMoot 2023 - Ricardo Guerra - Plugins_v3.pptx
MoodleMoot 2023 - Ricardo Guerra - Plugins_v3.pptxRicardo Guerra Freitas
 
MoodleMoot 2023 - Ricardo Guerra - Ambiente multi-empresa IOMAD.pptx
MoodleMoot 2023 - Ricardo Guerra - Ambiente multi-empresa IOMAD.pptxMoodleMoot 2023 - Ricardo Guerra - Ambiente multi-empresa IOMAD.pptx
MoodleMoot 2023 - Ricardo Guerra - Ambiente multi-empresa IOMAD.pptxRicardo Guerra Freitas
 
Olive etal formerstudentsperceptionimprovementpotentialconceptualmodelingprac...
Olive etal formerstudentsperceptionimprovementpotentialconceptualmodelingprac...Olive etal formerstudentsperceptionimprovementpotentialconceptualmodelingprac...
Olive etal formerstudentsperceptionimprovementpotentialconceptualmodelingprac...Ricardo Guerra Freitas
 
Windows 10 technical preview - design and news
Windows 10 technical preview - design and newsWindows 10 technical preview - design and news
Windows 10 technical preview - design and newsRicardo Guerra Freitas
 

Mais de Ricardo Guerra Freitas (20)

2006 - Microsot e Open Source uma visão comparativa dos modelos.ppt
2006 - Microsot e Open Source uma visão comparativa dos modelos.ppt2006 - Microsot e Open Source uma visão comparativa dos modelos.ppt
2006 - Microsot e Open Source uma visão comparativa dos modelos.ppt
 
2006 - SegundaAula.ppt
2006 - SegundaAula.ppt2006 - SegundaAula.ppt
2006 - SegundaAula.ppt
 
2006 - ConceitosDeOrientaçãoObjeto.ppt
2006 - ConceitosDeOrientaçãoObjeto.ppt2006 - ConceitosDeOrientaçãoObjeto.ppt
2006 - ConceitosDeOrientaçãoObjeto.ppt
 
2006 - Linguagem VB II.ppt
2006 - Linguagem VB II.ppt2006 - Linguagem VB II.ppt
2006 - Linguagem VB II.ppt
 
2006 - ASP.NET.ppt
2006 - ASP.NET.ppt2006 - ASP.NET.ppt
2006 - ASP.NET.ppt
 
2006 - Tipos de Projeto & IDE do Visual Studio.ppt
2006 - Tipos de Projeto & IDE do Visual Studio.ppt2006 - Tipos de Projeto & IDE do Visual Studio.ppt
2006 - Tipos de Projeto & IDE do Visual Studio.ppt
 
2006 - CURSOINTRODUÇÃOADOTNET.ppt
2006 - CURSOINTRODUÇÃOADOTNET.ppt2006 - CURSOINTRODUÇÃOADOTNET.ppt
2006 - CURSOINTRODUÇÃOADOTNET.ppt
 
2006 - FrameWorkdotNET Ricardo Guerra.ppt
2006 - FrameWorkdotNET Ricardo Guerra.ppt2006 - FrameWorkdotNET Ricardo Guerra.ppt
2006 - FrameWorkdotNET Ricardo Guerra.ppt
 
2006 - Linguagem VB.ppt
2006 - Linguagem VB.ppt2006 - Linguagem VB.ppt
2006 - Linguagem VB.ppt
 
2006 - Distribuindo sua Aplicação.ppt
2006 - Distribuindo sua Aplicação.ppt2006 - Distribuindo sua Aplicação.ppt
2006 - Distribuindo sua Aplicação.ppt
 
2006 - Tratamento de Erro e Debug.ppt
2006 - Tratamento de Erro e Debug.ppt2006 - Tratamento de Erro e Debug.ppt
2006 - Tratamento de Erro e Debug.ppt
 
2006 - Introdução a Objetos Linguagem e Padrões.ppt
2006 - Introdução a Objetos Linguagem e Padrões.ppt2006 - Introdução a Objetos Linguagem e Padrões.ppt
2006 - Introdução a Objetos Linguagem e Padrões.ppt
 
MoodleMoot 2023 - Ricardo Guerra - Plugins_v3.pptx
MoodleMoot 2023 - Ricardo Guerra - Plugins_v3.pptxMoodleMoot 2023 - Ricardo Guerra - Plugins_v3.pptx
MoodleMoot 2023 - Ricardo Guerra - Plugins_v3.pptx
 
MoodleMoot 2023 - Ricardo Guerra - Ambiente multi-empresa IOMAD.pptx
MoodleMoot 2023 - Ricardo Guerra - Ambiente multi-empresa IOMAD.pptxMoodleMoot 2023 - Ricardo Guerra - Ambiente multi-empresa IOMAD.pptx
MoodleMoot 2023 - Ricardo Guerra - Ambiente multi-empresa IOMAD.pptx
 
MoodleMoot 2022 - competencias
MoodleMoot 2022 - competenciasMoodleMoot 2022 - competencias
MoodleMoot 2022 - competencias
 
MoodleMoot 2022 - plugins
MoodleMoot 2022 - pluginsMoodleMoot 2022 - plugins
MoodleMoot 2022 - plugins
 
Windows 10 Anniversary Update
Windows 10 Anniversary UpdateWindows 10 Anniversary Update
Windows 10 Anniversary Update
 
Olive etal formerstudentsperceptionimprovementpotentialconceptualmodelingprac...
Olive etal formerstudentsperceptionimprovementpotentialconceptualmodelingprac...Olive etal formerstudentsperceptionimprovementpotentialconceptualmodelingprac...
Olive etal formerstudentsperceptionimprovementpotentialconceptualmodelingprac...
 
Windows 10 technical preview - design and news
Windows 10 technical preview - design and newsWindows 10 technical preview - design and news
Windows 10 technical preview - design and news
 
Windows 10 Technical Preview
Windows 10 Technical PreviewWindows 10 Technical Preview
Windows 10 Technical Preview
 

Introdução ao ADO.NET

  • 1. Introdução ADO.NET Ricardo Guerra Freitas Líder da Célula .NET RIO: http://groups.msn.com/celulanetrio Email/MSN: guerra_rj@hotmail.com Blog: http://thespoke.net/blogs/guerra_rj/default.aspx Site do Curso para baixar os slides: http://br.groups.yahoo.com/group/CursoDotNetSaoJose
  • 2. Agenda • Histórico do Acesso a Dados • Conceitos • Ambientes Conectados e Desconectados • Modelo de Objetos • Data Providers • Objeto Connection – String de Conexão • Objeto Command • Objeto DataReader
  • 11. O que é ADO.NET? • ADO.NET é um conjunto de classes que trabalham com dados. • Ele provê: – É evolucionário, sucessor do ADO – Um sistema desenvolvido para ambientes desconectados – Um modelo de programação com suporte nativo a XML – Um conjunto de classes, interfaces, estruturas, e enumerações que gerenciam o acesso a dados usando o .Net Framework
  • 12. ADO.NET suporta os seguintes tipos de armazenamento de dados • Não estruturado • Estruturado e não hierárquico: – Arquivos separados por delimitadores, Microsoft Excel, arquivos do Microsoft Exchange, arquivos do Active Directory, e outros • Hierárquicos – Documentos XML e outros. • Bancos de dados relacionais – SQL Server, Oracle, Access, e outros
  • 14. O que é um ambiente conectado? • É um ambiente que o usuário esta sempre conectado ao banco de dados. • Vantagens: – É um ambiente com uma fácil implementação de segurança – Concorrência de dados é controlada – Os dados estão normalmente atualizados • Desvantagens: – Temos que ter uma conexão permanente com a fonte de dados – Pouca escalabilidade.
  • 15. O que é um ambiente desconectado? • Em um ambiente desconectado temos sempre um sub- conjunto de dados da fonte de dados • Os dados podem ser copiados e modificados independentes da fonte de dados • Vantagens: – Você pode trabalhar a qualquer hora que for conveniente para você, podendo ser conectado a fonte de dados e atualizar todas as alterações – Outros podem usar a conexão com a fonte de dados – Em um ambiente desconectado temos mais escalabilidade e performance • Desvantagens: – Os dados não estão sempre atualizados – Conflitos decorridos da concorrência são mais difíceis de serem resolvidos
  • 18. Evolução do ADO para ADO.NET
  • 19. O modelo de objetos do ADO.NET
  • 21. Modelo de comandos em ambiente conectado 1. Abrimos a conexão 2. Executamos o SqlCommand 3. As linhas são processadas para o DataReader 4. Fechamos o DataReader 5. Fechamos a conexão
  • 22. Modelo de comandos em ambiente desconectado 1. Abrimos a conexão 2. Preenchemos o DataSet com o método Fill 3. Fechamos a conexão 4. Alteramos livremente o DataSet 5. Abrimos a conexão 6. Atualizamos a fonte de dados 7. Fechamos a conexão
  • 24. O que é um .NET Data Provider? • Definição: – Um .NET data provider é o conjunto de classes que você usa para conectar a uma fonte de dados, recuperar dados e atualizar os dados • Tipos de .NET data providers: – SQL Server .NET Data Provider – OLE DB .NET Data Provider – ODBC .NET Data Provider – Outros
  • 25. As classes .Net Data Providers • XxxConnection. Por exemplo, SqlConnection – XxxTransaction. Por exemplo, SqlTransaction – XxxException . Por exemplo, SqlException – XxxError. Por exemplo, SqlError • XxxCommand. Por exemplo, SqlCommand – XxxParameter. Por exemplo, SqlParameter • XxxDataReader. Por exemplo, SqlDataReader • XxxDataAdapter. Por exemplo, SqlDataAdapter • XxxPermission. Por exemplo, SqlClientPermission
  • 26. Com tantos Data Providers, qual eu escolho? • SQL Server .NET Data Provider – Use para SQL Server versao 7.0 ou posterior • OLE DB .NET Data Provider • SQL Server 6.5, Microsoft Access, Oracle, outras origens de dados compativeis com OLE DB providers • ODBC .NET Data Provider • Origens de dados de sistemas legados que sejam compativeis somente com ODBC drivers, fora isso NUNCA use um driver ODBC.
  • 27. Principais namespaces relacionados: • System.Data • System.Data.Common • System.Data.SqlClient • System.Data.OleDb • System.Data.SqlTypes • System.Xml
  • 28. Acesso a Bases de Dados ADO .NET • Namespace System.Data • Modos de ter acesso a informação • OLE DB – namespace System.Data.OleDb • SQL - namespace System.Data.SqlClient Aplicativo .Net Informação Informação SQL Server Objectos OLE DB OLE DB Objectos OLE DB TDS
  • 30. Objeto Connection • SqlConnection / OleDbConnection • Parâmetros da string de conexão – Connection timeout – Data source – Initial catalog – Integrated security – Password – Persist security info – Provider – User ID Dim strConn as string = "data source=localhost; " + "initial catalog=northwind; " + "integrated security=true" Dim conn as new SqlConnection = SqlConnection(strConn)
  • 31. O que é uma String de Conexão? • Uma String de Conexão define os parametros requeridos to fazer a conexão com uma origem de dados • Parametros de uma String de Conexão: – Provider (somente para OLE DB) – Data Source – Initial Catalog – Integrated Security – User ID/Password – Persist Security Info
  • 32. Como configurar a String de Conexão? • Você só pode definir a propriedade ConnectionString quando a conexão estiver fechada • Para alterar a string de conexão, primeiro você tem que fechar a conexão para depois reabrir • Exemplo de uma conexão com Microsoft Access Dim cnNorthwind As New System.Data.OleDb.OleDbConnection() cnNorthwind.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=SamplesNorthwind.mdb;” • Aonde conseguir strings de conexão? – http://www.connectionstrings.com/
  • 34. Objeto Command • SqlCommand / OleDbCommand • Executar comandos SQL – ExecuteReader – executa comandos que devolvam linhas de informação (ex: SELECT) – ExecuteNonQuery – executa comandos que retornam dados (ex: INSERT, UPDATE, DELETE) – ExecuteScalar - retorna um valor único como resultado de uma função agregada (ex: COUNT) Dim com as new SqlCommand = SqlCommand() com.Connection = conn com.CommandText="Select * From Tabela;" Dim Info as SqlDataReader = com.ExecuteReader()
  • 36. Objeto DataReader • SqlDataReader / OleDbDataReader • Percurso forward-only em modo read-only • Propriedades e métodos mais usais • FieldCount • IsClosed • Close • GetString • GetInt32 Dim Info as SqlDataReader = com.ExecuteReader() DataGrid1.DataSource=Info
  • 37. Promoção!!! De 40 reais por 30 reais, SOMENTE PARA ALUNOS DA FACULDADE SÃO JOSÉ Learning Series BufaloInfo • A Búfalo Informática e o grupo devASPNet tem o prazer de apresentar a nova Learning Series BufaloInfo, a mais nova série de CDs com vídeos de E- Learning sobre tecnologias Microsoft. • Para iniciar a série estamos lançando o CD de treinamento Desenvolvimento Web com ASP.NET • Mais de 8 horas de vídeo aulas • Demostrações detalhadas apresentadas por Dennes Torres • Vídeos divididos em pequenas partes, com demonstrações que podem ser reproduzidas • Código fonte de cada demonstração no CD, em versão ANTES e DEPOIS, permitindo a você reproduzir as demostrações e comparar com o resultado disponível. • Indicação de artigos e dicas técnicas ligadas aos assuntos apresentados no CD • Suporte técnico sobre os temas abordados nas vídeo aulas • http://www.bufaloinfo.com.br/learningseries.asp
  • 38. Evento Gratuito • Segundo TechConference na Veiga de Almeida na Tijuca, dias 12 e 19 de novembro • Para se inscrever visite o site: • http://www.bufaloinfo.com.br/techconference2/
  • 39. Bom Final de Semana!! Ricardo Guerra Freitas Líder da Célula .NET RIO: http://groups.msn.com/celulanetrio Email/MSN: guerra_rj@hotmail.com Blog: http://thespoke.net/blogs/guerra_rj/default.aspx Site do Curso para baixar os slides: http://br.groups.yahoo.com/group/CursoDotNetSaoJose