EXEMPLOS DE CONEXAO COM ACCESS 2010 OU MAIS NOVO
Amigos gostaria de receber alguns exemplos de conexao com access mais novo, atualmente trabalho com o 97 ainda e preciso me reciclar, preciso de exemplos de conexão e de consultas e de dicas tbem, agradeço a todos que puderem me ajudar
Sds,
Mito
Exemplos de conexões você encontra aqui:
http://www.connectionstrings.com/
Mas, outro dia, eu montei um exemplo para OUTRA dúvida, procure um exemplo de gráfico que eu coloquei dentro do tópico (faço um acesso ao Access mais novo lá) talvez te ajude:
GRÃFICO .NET PEPINO
http://www.vbmania.com.br/index.php?modulo=forum&metodo=abrir&id=445764&pagina=1
[][ô]s,
Tunusat.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.OleDb;
using System.Windows.Forms;
{
class Conexao
{
private string caminhoBanco = @[Ô]Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Banco\AMDB.accdb[Ô];
/**
* Parametro SQL string para setar uma pesquisa no banco de dados
* Retorna Uma tabela com o resultado da pesquisa segundo o parametro SQL
* OBS: Ao instanciar este método, setar apenas SQL de SELECT
*/
public DataTable Pesquisar(String SQL)
{
DataTable tabela = new DataTable();
try
{
tabela.Rows.Clear();
OleDbConnection conn = new OleDbConnection(caminhoBanco);
conn.Open();
OleDbCommand comando = new OleDbCommand(SQL, conn);
OleDbDataAdapter adapter = new OleDbDataAdapter(comando);
adapter.Fill(tabela);
conn.Close();
}
catch (Exception Ex)
{
MessageBox.Show([Ô]Erro de Comando: [Ô] + Ex.Message);
}
return tabela;
}
/**
* Parametro SQL string para setar uma pesquisa no banco de dados
* OBS: Ao instanciar este método, setar apenas SQL de INSERT, UPDATE ou DELET
*/
public void CRUD(string SQL)
{
try
{
OleDbConnection conn = new OleDbConnection(caminhoBanco);
conn.Open();
OleDbCommand comando = new OleDbCommand(SQL, conn);
comando.ExecuteNonQuery();
conn.Close();
}
catch (Exception Ex)
{
MessageBox.Show([Ô]Erro de Comando: [Ô] + Ex.Message);
}
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.Threading.Tasks
Imports System.Data
Imports System.Data.OleDb
Public Class Conexao
[ô]Variavel que guarda o caminho com o banco de dados
Private caminhoBanco As String = [Ô]Provider=Microsoft.ACE.OLEDB.12.0;Data Source = o caminho do seu banco[Ô]
[ô]esta função será apenas para pesquisa pois ela retorna um datatable que pode ser usado como data source
Public Function Pesquisar(ByVal SQL As String)
Dim Tabela As New DataTable
Try
Tabela.Rows.Clear()
Dim conn As New OleDbConnection(caminhoBanco)
conn.Open()
Dim comando As New OleDbCommand(SQL, conn)
Dim adapter As New OleDbDataAdapter(comando)
adapter.Fill(Tabela)
conn.Close()
Catch ex As Exception
MessageBox.Show([Ô]Erro de Comando: [Ô] & ex.Message)
End Try
Return Tabela
End Function
[ô]este método serve apenas para INSERT, UPDATE ou delete. Por isso que o chamei de CRUD
Public Sub CRUD(ByVal SQL As String)
Try
Dim conn As New OleDbConnection(caminhoBanco)
conn.Open()
Dim comando As New OleDbCommand(SQL, conn)
comando.ExecuteNonQuery()
conn.Close()
Catch ex As Exception
MessageBox.Show([Ô]Erro de Comando: [Ô] + ex.Message)
End Try
End Sub
End Class
depois quando instanciar essa classe, é só chamar a função de pesquisar ou o método de crud tipo assim:
Dim conecta As New Conexao
Public Sub pesquisar()
conecta.Pesquisar([Ô]SELECT * FROM...[Ô])
End Sub
Public Sub Inserir()
conecta.CRUD([Ô]INSERT INTO...[Ô])
End Sub
Public Sub Atualizar()
conecta.CRUD([Ô]UPDATE ...[Ô])
End Sub
Public Sub Deletar()
conecta.CRUD([Ô]DELETE FROM...[Ô])
End Sub
Citação::
Consegui adaptar no vb.net! é só vc criar uma classe chamada conexão e colar essa codificação:
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.Threading.Tasks
Imports System.Data
Imports System.Data.OleDb
Public Class Conexao
[ô]Variavel que guarda o caminho com o banco de dados
Private caminhoBanco As String = [Ô]Provider=Microsoft.ACE.OLEDB.12.0;Data Source = o caminho do seu banco[Ô]
[ô]esta função será apenas para pesquisa pois ela retorna um datatable que pode ser usado como data source
Public Function Pesquisar(ByVal SQL As String)
Dim Tabela As New DataTable
Try
Tabela.Rows.Clear()
Dim conn As New OleDbConnection(caminhoBanco)
conn.Open()
Dim comando As New OleDbCommand(SQL, conn)
Dim adapter As New OleDbDataAdapter(comando)
adapter.Fill(Tabela)
conn.Close()
Catch ex As Exception
MessageBox.Show([Ô]Erro de Comando: [Ô] & ex.Message)
End Try
Return Tabela
End Function
[ô]este método serve apenas para INSERT, UPDATE ou delete. Por isso que o chamei de CRUD
Public Sub CRUD(ByVal SQL As String)
Try
Dim conn As New OleDbConnection(caminhoBanco)
conn.Open()
Dim comando As New OleDbCommand(SQL, conn)
comando.ExecuteNonQuery()
conn.Close()
Catch ex As Exception
MessageBox.Show([Ô]Erro de Comando: [Ô] + ex.Message)
End Try
End Sub
End Class
depois quando instanciar essa classe, é só chamar a função de pesquisar ou o método de crud tipo assim:
Dim conecta As New Conexao
Public Sub pesquisar()
conecta.Pesquisar([Ô]SELECT * FROM...[Ô])
End Sub
Public Sub Inserir()
conecta.CRUD([Ô]INSERT INTO...[Ô])
End Sub
Public Sub Atualizar()
conecta.CRUD([Ô]UPDATE ...[Ô])
End Sub
Public Sub Deletar()
conecta.CRUD([Ô]DELETE FROM...[Ô])
End Sub
fiz apenas uma janelinha de cadastro, no banco fiz apenas uma tabela de clientes com dois campos somente. mas já dá pra entender alguma coisa. Se vc já tem facilidade pra se trabalhar com SQL vai ser moleza pra vc. A partir desse exemplo vc pode abrir um leque de experiencias e conhecimentos.
Não se esqueça que podes instanciar quantas vezes quizer a classe de conexão, e quando for fazer uma pesquisa use a função pesquisar e quando for inserir atualizar ou deletar no banco use o método crud como mostrei no exemplo.
OBS: o banco do exemplo está em access 2007. Mas creio que 2010 pra cima use a mesma extensão.
qualquer dúvida estamos aÃ!
Fico muito agradeço muito pelo exemplo, mas este exemplo dev ser em .net e nao manjo nada de .net , vc tem um exemplo em VB6 ?
Sds
Mito
Mas VB.NET pra vc que já manja de VB6 é bem mais fácil de se aprender! Eu também no começo trabalhei com VB6 e essa linguagem me ajudou muito a aprender pelo menos as lógicas de programação. Hoje prefiro mais o C# do que VB.NET por ser uma linguagem bem mais abreviada, mas como vc viu pude adaptar o mesmo código do C# no VB.NET
Agora vamos [Ô]de volta pro VB6[Ô] (dava pra fazer um filme com esse nome! rsrsrsr)
A String de conexão é bem simples. Mas vc tem que digita-la em todos os comandos de select, insert, update e delet. Não me lembro muito bem como se faz pra instanciar objetos no VB6. Acho que do mesmo modo que agente cria classes no .NET, no VB6 agente cria módulos. Mas isso acho que vc já deva saber. este exemplo abaixo mostra como inserir em um banco de dados access 2010 usando ADODB.
No seu formulário de cadastro por exemplo coloque na codificação seção General o seguinte:
Dim conexao As new ADODB.Connection
Dim registros As new ADODB.Recordset
na codificação do botão gravar por exemplo vc digitaria o seguinte:
Set resgistros = new ADODB.Recordset
conexao.Provider = [Ô]Microsoft.ACE.OLEDB.12.0[Ô]
conexao.Properties([Ô]Data Source[Ô]) = [Ô]Caminho do seu banco[Ô]
conexao.Open
On Error GoTo erro
registros.Open [Ô]INSERT INTO sua_tabela(suas_colunas) VALUES(seus_valores)
MsgBox [Ô]Registro Gravado![Ô],vbInformation,[Ô]Sucesso![Ô]
conexao.Close
Exit Sub
erro:
MsgBox [Ô]Erro ao cadastrar!, Tente Novamente[Ô],vbCritical,[Ô]Erro[Ô]
conexao.Close
Daà pra frente é só trocar o SQL quando quizer fazer uma consulta, uma atualização, e assim vai...
Tem um exemplo muito bacana de um casteliano no YouTube, lá ele mostra um projeto utilizando ADODB para inserir, atualizar e deletar
dá uma olhada: https://www.youtube.com/watch?v=9UwrU1Q5T1g
Espero ter ajudado!
Té mais
Eu ia so falar q existem peculiaridades na abertuda do bd, mas ai ja quebrou total o esquema