You are on page 1of 25

Para conectar-se a um banco de dados Access usando o controle

SqlDataSource

1. No Microsoft Visual Studio, abra um site, adicione um página ASP.NET (Web


Form), e alterne para o modo Design.
2. From the Data group in the Toolbox, drag a SqlDataSource control onto the
page.
3. No menu de atalho SqlDataSource Tasks, clique em Configure Data Source.
• Se o menu de atalho SqlDataSource Tasks não for exibido, clique com
o botão direito do mouse no controle SqlDataSource e clique em
Configure Data Source.
4. Clique em New Connection.
• Se a caixa de diálogo Choose Data Source aparecer, clique em
Microsoft Access Database File, e clique em Continue.
5. Na caixa de diálogo Add Connection, clique em Change, na caixa de diálogo
Change Data Source clique em Microsoft Access Database File e clique em
OK.
6. Na caixa Database file name, digite um caminho para o banco de dados
Access, e em Log on to the database, insira suas credenciais de logon, se elas
forem necessários.
7. Opcionalmente, clique em Test connection para verificar se a conexão com o
banco de dados Access teve êxito.
8. Clique em OK.

Observe que a sua nova conexão é selecionada na caixa de diálogo Configure


Data Source - <Datasourcename>.

9. Clique em Next.
10. Selecione a caixa de seleção Yes, save this connection as, digite um nome
para a conexão para quando a conexão for armazenada no arquivo de
configuração do aplicativo e clique em Next.
11. Selecione a tabela de banco de dados, visão (Access Query) ou procedimento
armazenado (Access Query), do qual quer recuperar resultados ou entre com
suas próprias instruções SQL.
12. Opcionalmente, você pode clicar em WHERE para fornecer critérios de pesquisa
e ORDER BY para especificar a ordem de classificação.
• Se você deseja oferecer suporte às operações de inserção, atualização e
exclusão, clique em Advanced e selecione Generate INSERT, UPDATE,
and DELETE statements para o controle SqlDataSource .Você também
pode selecionar Use optimistic concurrency para especificar que você
deseja os comandos para determinar se os dados foram modificados antes
que uma operação de atualização ou exclusão seja efetuada.
13. Para testar sua consulta, clique em Next e clique Test Query.
14. Clique em Finish.

Agora você pode arrastar um controle vinculado a dados, como um controle


GridView, para a página e especificar o seu controle SqlDataSource como a fonte
de dados.
Acesso a dados com o Visual Basic.NET

O objetivo deste tutorial é mostrar como acessar uma base de dados com o Visual
Basic.NET através de componentes e linhas de código, ele não explica a
arquitetura de dados do ADO.NET (tecnologia de acesso a dados do .NET
Framework) e nem funções avançadas de banco de dados, você aprenderá a
acessar e apresentar dados com um DataGrid ...
04/06/03h

O objetivo deste tutorial é mostrar como acessar uma base de dados com o Visual
Basic.NET através de componentes e linhas de código, ele não explica a arquitetura
de dados do ADO.NET (tecnologia de acesso a dados do .NET Framework) e nem
funções avançadas de banco de dados, você aprenderá a acessar e apresentar
dados com um DataGrid.

Para que você possa aproveitar o TM todo é recomendado que você já possua boas
noções de programação, Visual Basic e Access.

Softwares utilizados :

- Microsoft Visual Studio.NET 2003 Enterprise Architect (também conhecido como


"Everett" ou versão 7.1) - Beta Final
- Microsoft Access 2002

Requisitos do sistema: (Somente citarei o necessário para o VS.NET, o


que já engloba os requisitos para o Access)

- Processador Intel Pentium II /AMD K6-2 a partir de 450 Mhz (Pentium III/AMD Duron
a partir de 600 Mhz recomendados);
- Memória RAM: 96 MB para Windows 2000 Pro (Recomendado 128 MB)
192 MB para Windows 2000 Server (Recomendado 256 MB)
96 MB para Windows XP Home (Recomendado 160 MB)
192 MB para Windows XP Pro (Recomendado 256 MB)
192 MB para Windows Server 2003 (Recomendado 256 MB)
- 4.1 GB no drive da instalação e 900 MB no drive do sistema
- Sistema Operacional: Windows 2000*, Windows XP ou Windows Server 2003 (é
possível executar aplicações desenvolvidas com o VS.NET no Windows 98/Me/NT 4
mas não é possível desenvolver as aplicações nesses sistemas) * o Windows 2000
Datacenter Server não é suportado.
- Drive de CD-ROM ou DVD-ROM
- Placa de vídeo e monitor que suporte resolução de 800x600 e 256 cores
(Recomendado High Color 16-Bit)
- Mouse

Iniciando:
Primeiramente crie um banco de dados chamado TM com apenas uma tabela
chamada Clientes. A estrutura dessa tabela deve ser a seguinte:

Campo Tipo de Dados


CliCodigo AutoNumeração
CliNome Texto (50 posições)

Salve seu banco em C:\TM.mdb. Agora entre no Visual Studio.NET e escolha Visual
Basic Projects em Project Types e Windows Application em Templates, em Name
digite TM_VbNET, como é mostrado na figura abaixo:

Após isso selecione a aba Windows Forms na ToolBox e coloque no form um


DataGrid (chamado Grid) e um Button (chamado btnCarregar): seu form deve ficar
parecido com o da figura abaixo:
Form1

Agora selecione a aba Data e coloque sobre o form um controle OleDBConnection:


este componente é responsável por estabelecer uma conexão entre o banco de
dados e a aplicação, disponibilizando os dados para que sejam manipulados. Note
que ele será colocado numa área especial logo abaixo do form, onde ficam os
componentes invisíveis em tempo de execução.

Renomeie o componente para "Cnx", veja abaixo:


Aba Data na Toolbox

Área de componentes invisíveis logo abaixo do seu Form

Selecione o componente "Cnx" e na janela Properties selecione a propriedade


ConnectionString, clique na seta que aparece neste campo.

Quando uma pequena caixa de seleção se abrir escolha "<New Connection...>",


será apresentada a seguinte janela:
Data Link Properties

Selecione a aba Provider e escolha "Microsoft Jet 4.0 OLE DB Provider" como na
figura abaixo:
Selecionando Provider para conexão

Clique em Next. Agora selecione a localização do banco de dados, como na figura


abaixo:
Data Link Properties - Connection

Pressione o botão Test Connection. Se a mensagem "Test connection suceeded" for


apresentada então está tudo certo: pressione OK na caixa de aviso e OK outra vez
para fechar a janela Data Link Properties.

Caso contrário, verifique e refaça os passos anteriores e persistindo a falha


verifique se o VS.NET e o Access estão corretamente instalados e configurados.

Agora coloque no Form um componente OleDbDataAdapter e o VS.NET abrirá um


Wizard. O DataAdapter é um componente indispensável no acesso a dados com
ADO.NET: é ele quem selecionará os dados na fonte e será também ele que
atualizará as modificações feitas no banco de dados.

Na primeira tela, que é meramente informativa, clique em Next. A seguir ele pedirá
que você selecione uma conexão que por padrão deverá ser a nossa conexão já
criada, como abaixo:
Selecionando uma conexão

Selecione a nossa conexão com o banco Access e clique Next: será apresentada a
janela Choose a Query Type para que você selecione o modo como o DataAdapter
irá recuperar os dados do banco de dados.

Selecione "Use SQL statements" (que deve ser a única opção disponível por
estarmos trabalhando com banco Access que não possui Stored Procedures que são
utilizadas nas duas outras opções).

Veja a figura:
Selecione o modo como o DataAdapter acessará o banco de dados

Clique em Next: será apresentada a janela "Generate the SQL statements" na qual
você deverá inserir o comando SQL que selecionará os dados no banco. Você pode
construir esse comando visualmente clicando em "Query Builder..." mas como este
exemplo é bem simples, basta digitar "SELECT * FROM Clientes ORDER BY
CliCodigo".

Veja a figura:
Digite o comando SQL para acessar os dados

Nesta janela você pode notar o botão "Advanced Options..." (eu não explicarei suas
funções pois as opções default satisfazem nossas necessidades nesse caso mas
sugiro você voltar a esta tela e examinar estas opções após concluirmos o tutorial).
Você também pode clicar em "Query Builder..." e selecionar visualmente os campos
e tabelas do comando SQL.

Agora clique em Next: a próxima tela apenas confirma a criação do DataAdapter.


Clique em Finish.

Agora que a conexão e o DataAdapter foram criados a partir de componentes


visuais, o restante dos objetos necessários serão criados via código.

Clique duas vezes no botão btnCarregar e digite o seguinte código:

Dim mDataSet As New DataSet


'O objeto DataSet é o que contém os dados e tabelas
'propriamente ditos, ele é praticamente um banco de dados
'relacional em memória

Cnx.Open()
OleDbDataAdapter1.Fill(mDataSet, "Clientes") 'Fill preenche o DataSet
com os dados selecionados pelo DataAdapter, o segundo parâmetro define
o nome da tabela dentro do DataSet, em nosso caso "Clientes"
Cnx.Close() 'Podemos trabalhar com os dados desconectados

'atribuindo o DataSet ao DataGrid


Grid.DataSource = mDataSet
Grid.DataMember = "Clientes"
Lembre-se de abrir o banco de dados no Access e incluir alguns dados. Após
executar o programa (apertando F5) e clicar no botão o resultado será o seguinte:

Resultado após clique no botão Carregar

Conclusão
Foram apresentados conceitos básicos de acesso a dados com o Visual Basic.NET.
Sinta-se a vontade para estender este exemplo, aumentando o número de tabelas
no banco de dados e o número de forms da aplicação e tente explorar os métodos e
propriedades dos objetos DataSet e DataAdapter para se aprofundar no
assunto :) ...

Espero em breve elaborar um tutorial com conceitos mais avançados tais como
Inclusão, Alteração e Exclusão de registros em banco de dados e espero também
que este tutorial o tenha ajudado a conhecer a nova forma com que o VB.NET
acessa os dados.
VB.NET 2005 - Criando uma aplicação Windows Completa:
Locadora de Filmes - Parte 1

Atendendo milhares de pedidos resolvi mostrar como você pode desenvolver uma
aplicação Windows no VB 2005 de 'cabo a rabo', ou seja do início ao fim. Será uma
aplicação que se propõe a gerenciar uma locadora de filmes (DVD e VHS) com
recursos básicos.

Primeiro quero deixar claro que tudo o que você vai ler neste artigo e nos artigos
seguintes não é de minha autoria. Tudo está baseado nos exemplos da MSDN
(MSDnVideo) que você pode acessar no site da Microsoft. Eu apenas refiz os
exemplos citados com algumas adaptações e alterações.

Para acompanhar esta série de artigos você vai precisar ter os seguintes recursos
instalados e funcionando no seu computador:

• Visual Basic 2005 Express


• SQL Server 2005 Express

O objetivo principal deste artigo é apresentar os novos recursos de acesso a dados


a aplicação será bem simples de forma a tornar possível, em um tempo razoável, a
publicação dos artigos. Portanto a modelagem de dados e a definição de requisitos,
pontos fundamentais em qualquer aplicação não estarão refletindo o que seria uma
aplicação real de produção. A idéia é fornecer os fundamentos básicos para que
você possa expandir e melhorar a aplicação e também para que os que estão
começando agora possam acompanhar os artigos sem muito trauma.

Nesta primeira parte vou desenvolver os seguintes tópicos:

1. Criação do Banco de dados , tabelas , campos , definição de chaves


primárias e do relacionamento entre as tabelas do sistema
2. Criação de uma conexão com a fonte de dados e definição dos DataSets

Nota: O item 1 já foi discutido no artigo VB.NET 2005 - Criando a base de


dados, as tabelas e os relacionamentos no VB2005.

1- Criando o Banco de dados, as tabelas e definindo o


relacionamento

Vamos então arregaçar as mangas e por a 'mão na massa'. Inicie o Visual Basic
2005 Express Edition e clique na opção Create Project, selecionando a seguir na
janela New Project o Template Windows Application, e, informando o nome do
projeto como Locadora Filmes (ou algo que melhor lhe apetecer...eu vou usar o
nome citado.) conforme figura abaixo:
Na janela Solution Explorer clique com o botão direito do mouse sobre o nome do
projeto e selecione do menu suspenso a opção Add -> New Item, e na janela Add
New Item , selecione o Template SQL Database informando o nome de
Locadora.mdf; a seguir clique no botão Add. (figura abaixo)

Na janela Data Source COnfiguration Wizard, como vamos criar as tabelas clique no
botão - Finished. Você verá, conforme figura abaixo, o banco de dados
Locadora.mdf criado e incorporado ao seu projeto. Isto é uma novidade do VB
2005.
Vamos criar as tabelas do nosso projeto; na janela DataBase Explorer expanda o
item Locadora.mdf e clique com o botão direito do mouse sobre o item Tables,
selecionando a opção Add New Table.
Digite o nome e os tipos de dados de cada campo e a seguir salve a tabela com o
nome de Cliente, conforme figura abaixo:

Note que o campo CodigoCliente é a chave primária da tabela . Para definir a


chave primária para cada tabela clique com o botão direito do mouse sobre o
campo que deseja como chave primária e selecione a opção - Set As Primary Key.

Vamos definir campo CodigoCliente como sendo do tipo Identity. Para isto
selecione o campo e na janela Column Properties defina Identity Specification
como Yes ; (Is Identity) como Yes e aceite os valores padrão para Identity
Increment e Identity Seed, conforme figura abaixo:

Repita o procedimento adotado acima e crie a tabela Filmes conforme figura


abaixo:

Defina o campo CodigoFilme como chave primária e do tipo Identity.


Repita a operação para a tabela Movimento, conforme abaixo:

Defina o campo CodigoLocacao como chave primária e do tipo Identity.

Após terminar você deverá ter 3 tabelas conforme abaixo:

1. Cliente - Contém os dados dos clientes da locadora


2. FImes - Contém os dados sobre os filmes oferecidos pela locadora
3. Movimento - Contém os dados sobre a locação dos filmes pelos clientes

Vamos definir o relacionamento entre as tabelas. Clique agora no item Database


Diagrams e selecione a opção Add New Diagram.

Nota: Informe o nome do Diagrama como DiagramaLocadora


Na janela Add Table, selecione cada uma das tabelas e clique no botão Add.

Como já vimos, para definir a chave primária para cada tabela clique com o botão
direito do mouse sobre o campo que deseja como chave primária e selecione a
opção - Set As Primary Key, aceitando o valor padrão das telas seguintes.

Vamos definir os seguintes relacionamentos entre as tabelas:

1- Cliente (CodigoCliente) --> Movimento (CodigoCliente) -


Relacionamento do tipo UM-PARA-MUITOS

2- Filmes(CodigoFilme) --> Movimento (CodigoFilme) - Relacionamento


do tipo UM-PARA-MUITOS

Ou seja:
1- Existe um relacionamento entre a tabela Cliente e a tabela Movimento entre as
chaves primárias CodigoCliente onde para cada Cliente da tabela Cliente eu posso
ter infinitos Clientes na tabela Movimento.

2- Existe um relacionamento entre a tabela Filmes e a tabela Movimento entre as


chaves primárias CodigoFilme onde para cada Filme da tabela Cliente eu posso ter
infinitos Filmes na tabela Movimento.

Nota: Esta modelagem foi adotada apenas com objetivo didático e não
deve ser usada em uma aplicação de produção pois não está, como podem
notar, corretamente normalizada.

Pronto ! Já temos o banco de dados criado no SQL Server 2005 e as tabelas


Cliente, Filmes e Movimento também criadas e com campos e relacionamentos
definidos. Note que tudo foi feito usando o VB.NET 2005 com ajuda dos seus
assistentes.

2- Criação de uma conexão com a fonte de dados e definição


dos DataSets

Vamos agora criar a conexão e as fonte de dados do tipo DataSet usando o


assistente do VB 2005.

1- Clique na guia Data Sources e selecione a opção - Add New DataSource;


Na janela Data Source Configuration Wizard, selecione a opção DataBase e
clique no botão Next>.
Fontes de dados

O Visual Studio 2005 apresenta o conceito de fontes de dados em um projeto.


Uma fonte de dados representa os dados disponíveis para um aplicativo. Esses
dados não estão necessariamente em um banco de dados, o Data Source
Configuration Wizard (Assistente para Configuração de Fonte de Dados) que
você usa para definir a fonte de dados permite obter os dados de três fontes
diferentes:

1Banco de dados — pode ser um banco de dados baseado no servidor, como o


.SQL Server ou o Oracle, ou um banco de dados baseado em arquivo, como o
Access ou o SQL Server Express. O Visual Studio gera automaticamente os
DataSets de tipos, bem como outras classes, e os adiciona ao projeto.
2Objeto — qualquer objeto com propriedades públicas pode ser a fonte de
.dados. Não é necessário implementar nenhuma interface especial.
3Serviço da Web — criar uma fonte de dados em um serviço da Web cria
.objetos correspondentes ao tipo de dados retornado por esse serviço.

A finalidade da fonte de dados é dupla. Em primeiro lugar, ela torna mais fácil
especificar, criar e gerar classes com rigidez de tipos que representam os dados
do aplicativo. Em segundo lugar, fornece um mecanismo flexível, porém
uniforme, de criação rápida de interfaces de usuário WinForm e WebForms
avançadas e altamente funcionais. Neste artigo, veremos o quanto isso é rápido,
fácil e flexível.

Também nos concentraremos na criação de fontes de dados de banco de dados


(DataSet) e no uso dessas fontes em aplicativos WinForms. No entanto, é
importante salientar estes dois pontos:

•Após a criação de uma fonte de dados, você a utiliza da mesma maneira,


independentemente da origem dos dados. Ou seja, assim como você pode
facilmente (e graficamente) ligar uma fonte de dados baseada em um
Database a uma grade ou a um conjunto de controles, também pode fazer isso
com os dados cuja origem é um serviço da Web ou seus objetos comerciais
personalizados.
•As fontes de dados são definidas da mesma maneira, independentemente de
serem usadas em um aplicativo WinForms ou WebForms. Os diferentes
provedores de dados também são abstratos; assim, se o seu acesso aos dados
estiver exposto somente pelo uso de DataSets e TableAdapters, para alterar
o banco de dados real, bastará alterar a seqüência de caracteres de conexão e
gerar as classes novamente.

fonte MSDN - Novos recursos de DataSet no Visual Studio 2005 - Jackie Goldstein - Renaissance
Computer Systems

2- Na tela seguinte, defina a conexão com o banco de dados Locadora.mdf.


Lembrando que podemos exibir a string de conexão. Clique no botão Next>
3- No próximo passo vamos criar uma fonte de dados do tipo DataSet para cada
uma das tabelas. Poderíamos criar um DataSet com mais de uma tabela se
desejamos apresentar um relacionamento do tipo mestre-detalhes. Selecione então
a tabela Clientes, informe o nome ClienteDS e clique no botão Finish.
Repita o procedimento acima (item 1 ao 3) e crie as fontes de dados FilmesDS e
MovimentoDS para as tabelas Filmes e Movimento.

Se tudo deu certo você deverá ter 3 fontes de dados do tipo DataSet em sua
janela, conforme figura abaixo:

Podemos navegar pelos objetos DataSet criados exibindo os campos de cada um


deles e também editar o DataSet. Para isto clique com o botão direito do mouse
sobre o DataSet e selecione a opção - Edit DataSet with Designer.
Será exibido a representação do objeto MovimentoDS, conforme figura acima,
onde temos a tabela com seus respectivos campos e o objeto TableAdapter que
permite alimentar, atualizar e aplicar filtros a fonte de dados.

E chegamos ao final da primeira parte onde temos a base de dados e as entidades


relacionadas a esta base de dados que simbolizam os nossos objetos de negócios
os quais são representados pelas tabelas Cliente, Filmes e Movimento; temos
também o adaptador que permite sincronizar essas entidades em memória com a
base de dados.

Conceito:

O conceito de um TableAdapter, por outro lado, é novo no Visual Studio 2005. A


idéia subjacente é que um TableAdapter com rigidez de tipos é o equivalente
com rigidez de tipos do DataAdapter padrão. Você usa o TableAdapter para se
conectar a um banco de dados e executar consultas (ou procedimentos
armazenados) nesse banco de dados, bem como para preencher com dados um
DataTable associado. Cada par DataTable-TableAdapter é indicado
simplesmente como um TableAdapter

O TableAdapter é essencialmente um invólucro ao redor de um DataAdapter


padrão, que oferece vários benefícios:

•A mesma classe TableAdapter pode ser usada em mais de um formulário ou


componente para que qualquer alteração em consultas/comandos seja
automaticamente refletida em todas as instâncias. Essa situação é diferente da
existente, na qual cada componente que acessa o banco de dados deve ter seu
próprio DataAdapter configurado individualmente. Dessa forma, fica muito
mais fácil garantir a sincronização de DataTables e DataAdapters.
•Em vez de usar vários DataAdapters (ou código de comutação artesanal) para
ter várias consultas/comandos para um único DataTable, um TableAdapter
permite definir facilmente vários comandos para um DataTable específico.
•Os comandos de preenchimento têm nomes legíveis ("amigáveis") e o
TableAdapter inclui um código para preencher automaticamente as
informações de tipo e valor de todos os parâmetros desses métodos de
comando. Você não precisa mais se preocupar em passar tipos de dados
específicos do provedor, como SqlInt.

fonte MSDN - Novos recursos de DataSet no Visual Studio 2005 - Jackie Goldstein - Renaissance
Computer Systems

Acompanhe a continuação deste artigo em : VB.NET 2005 - Criando uma


aplicação completa : Locadora de Filmes II

VB.NET 2005 , é fácil, é simples, é legal. Divirta-se...

referências:

MSDN - Novos recursos de DataSet no Visual Studio 2005 - Jackie


Goldstein - Renaissance Computer Systems

José Carlos Macoratti

You might also like