Desenvolvimento - Visual Basic .NET
Acessando PostgreSQL com VB.NET via NpgSQL
Este artigo mostra como retornar registros de uma banco de dados PostgreSQL na linguagem vb.NET através do NpgSQL.
por Marcus SáUma das maneiras mais rápidas de acesso ao banco de dados PostgreSQL (http://www.postgresql.org.br) é o NpgSQL (http://gborg.postgresql.org/project/npgsql/)
O NpgSQL é um .Net Data Provider feito para o acesso ao PostgreSQL escrito em C#, ele possui um mecanismo de pool de conexões, o pool de conexões por sua vez otimiza o acesso aos dados através de uma melhor utilização das conexões feitas com o banco de dados.
Bom, chega de tanta teoria e mãos a massa:
Primeiro vamos criar as tabelas e fazer o inserts
Criando as tabela.
Presumindo que você conheça o básico do SQL ai está uma tabela na qual trabalharemos neste artigo.
CREATE TABLE usuarios (
Login varchar(12) NOT NULL UNIQUE,
Senha VARCHAR(12) NOT NULL,
Nome VARCHAR(100),
DataUltimoAcesso date,
QuantidadeAcessos int,
PRIMARY KEY(login)
) WITH OIDS;
Após executar o script de criação das tabelas vamos a criação dos registros.
INSERT INTO usuarios (Login, Senha, Nome, DataUltimoAcesso, QuantidadeAcessos)
VALUES ('marcus', 'mar', 'Marcus Sá', CURRENT_DATE, 0);
INSERT INTO usuarios (Login, Senha, Nome, DataUltimoAcesso, QuantidadeAcessos)
VALUES ('carla', 'car', 'Carla Garcia', CURRENT_DATE, 0);
INSERT INTO usuarios (Login, Senha, Nome, DataUltimoAcesso, QuantidadeAcessos)
VALUES ('fabio', 'fab', 'Fábio Sá', CURRENT_DATE, 0);
INSERT INTO usuarios (Login, Senha, Nome, DataUltimoAcesso, QuantidadeAcessos)
VALUES ('elaine', 'ela', 'Elaine Beatriz', CURRENT_DATE, 0);
Pronto, tabela criada com alguns registros para serem consultados(neste primeiro artigo comentaremos apenas consulta ao PostgreSQL, aguarde os próximos) vamos ao código vb.net, tentei comentar o máximo que pude este código espero que ele ajude bastante!
'Importa o Npgsql que está na pasta bin
Imports Npgsql
Imports System.Data
Partial Class _Default
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
' Declara e atribui a string de conexão
Dim Conexao As String = "Server=localhost;Port=5432;UserId=postgres;Password=0000;Database=teste"
'Instancia NpgsqlConnection na variavel conn
Dim conn As NpgsqlConnection = New NpgsqlConnection(Conexao)
Try
' Abre a conexão
conn.Open()
'Declara e atribui a Query
Dim SQL As String = "Select * From Clientes"
'Instancia o NpgsqlDataAdapter que é responsavel pela comunicação isto significa efetuar a 'leitura dos dados de um banco de dados e preencher um dataset, efetuar a manutenção de 'dados e, em seguida, escrever de volta no banco de dados com as informações atualizadas do 'dataset. Na verdade, um data adapter pode mover dados entre qualquer fonte de dados e um 'dataset.
Dim da As Npgsql.NpgsqlDataAdapter = New NpgsqlDataAdapter(SQL, conn)
'Instacia um DataSet
Dim ds As DataSet = New DataSet()
'Popula o DataAdapter com o que retornou do DataSet
da.Fill(ds, "Clientes")
'Atribiu um Datasource a Grid
GridView1.DataSource = ds.Tables("Clientes").DefaultView
'Aciona a leitura da fonte de dados
GridView1.DataBind()
Catch ex As Exception
Finally
conn.Close()
End Try
End Sub
End Class
Resultado:
- Entity Framework 4: Repositório GenéricoVisual Basic .NET
- As edições 14 da Easy .net Magazine e 88 da .net Magazine já estão disponíveis.ADO.NET
- Postando no Twiiter com .NET e Migre.meC#
- Setup ApplicationsVisual Basic .NET
- Problemas na manipulação de arquivos do MS Excel com .NETVisual Basic .NET