Você está na página 1de 7

Professor: Adriano Doimo E-MAIL: adriano.doimo@etec.sp.gov.

br Data: 11/10/2013

CONEXÃO C# COM BANCO DE DADOS POSTGRESQL


Primeiramente crie o seu banco de dados com uma tabela CLIENTES e os campos COD_CLI (int
- primary key), NOM_CLI (varchar(50)), CID_CLI(cid_cli(varchar(30)) e UFE_CLI(varchar(2)).
OBS.: Utilize os comandos do PostgreSQL, já aprendidos em aulas anteriores para isso.
1) Criar a base de dados; 2) Criar a tabela CLIENTES; 3) Inserir alguns registros na tabela CLIENTES.

CRIANDO A SUA APLICAÇÃO WINDOWS

Ao executar o programa, na tela inicial, clicar no Menu Arquivo - Novo - Projeto, sendo que na tela
seguinte escolha:
1) Tipo do projeto (Lista de Modelos): Visual C#
2) Modelo: Aplicativo de Windows Forms
3) Nome: AulaCSharpcomPostgreSQL
4) Localização: A sua escolha
5) Deixe marcada a opção: Criar diretório para a solução.
6) Em seguida, clique no botão OK conforme imagem abaixo.

No Form1.cs crie um componente do tipo DataGridView (fica no subgrupo Data) e um botão, chamando-o
de CONSULTA.

DISCIPLINA: Programação de Computadores I ETEC Bento Quirino


Professor: Adriano Doimo E-MAIL: adriano.doimo@etec.sp.gov.br Data: 11/10/2013

Baixe a biblioteca Npgsql do site http://npgsql.projects.pgfoundry.org/ na área de downloads, de acordo


com a versão do seu framework. Para o Visual Studio 2010 normalmente trabalhamos com .NET
Framework 3.5 ou 4.0. Portanto escolha o arquivo .ZIP correto na área de downloads e baixe o mesmo,
descompactando-o em alguma pasta de sua escolha.

DISCIPLINA: Programação de Computadores I ETEC Bento Quirino


Professor: Adriano Doimo E-MAIL: adriano.doimo@etec.sp.gov.br Data: 11/10/2013

Para associar a biblioteca ao projeto, vá até o Menu Project - Add Reference

DISCIPLINA: Programação de Computadores I ETEC Bento Quirino


Professor: Adriano Doimo E-MAIL: adriano.doimo@etec.sp.gov.br Data: 11/10/2013

Vá até a aba Browse e procure a pasta onde o arquivo (já descompactado anteriormente), com nome
Npgsql.dll e Mono.Security.dll, marque-os e clique o botão OK.
Pronto! O seu projeto já está com o conector do PostgreSQL.

Podemos confirmar essa informação no Solution Explorer, conforme abaixo:

DISCIPLINA: Programação de Computadores I ETEC Bento Quirino


Professor: Adriano Doimo E-MAIL: adriano.doimo@etec.sp.gov.br Data: 11/10/2013

A partir daí adicionaremos as linhas de código correspondentes às conexões.

Nas propriedades do Form1, coloque a linha de comando:


using Npgsql;

Na área public partial class do Form1 coloque 02 linhas de comando, para contemplar o Dataset e
DataTable:
private DataSet ds = new DataSet();
private DataTable dt = new DataTable();

No evento CLICK do botão CONSULTA (ou qualquer que seja o nome do seu botão) clique 02 vezes e
aparecerá o evento private void button1_Click(object sender, EventArgs e), sendo assim,
insira o seguinte código:
{
try
{
// String de conexão PostgreSQL
string connstring = String.Format("Server=localhost; Port=5432; User Id=postgres;
Password=alunos; Database=teste");
// Conexão com o provedor Npgsql
NpgsqlConnection conn = new NpgsqlConnection(connstring);
// Abre a conexão
conn.Open();
// Execução comando SQL - bem simples
string sql = "SELECT * FROM clientes";
// Adaptador de dados fazendo pedido de conexão
NpgsqlDataAdapter da = new NpgsqlDataAdapter(sql, conn);
// Reset do Dataset antes de exibir o resultado
ds.Reset();
// Preenche DataSet com o resultado de NpgsqlDataAdapter
da.Fill(ds);
// Uma vez que o DataSet em C# pode lidar com várias tabelas, vamos selecioná-la
dt = ds.Tables[0];
// Conecta grid ao DataTable
dataGridView1.DataSource = dt;
// Fecha a conexão
conn.Close();
}
catch (Exception msg)
{
// Caso dê algum erro aparecerá a mensagem, pois existe um tratamento de erros
MessageBox.Show(msg.ToString());
throw;
}
}
DISCIPLINA: Programação de Computadores I ETEC Bento Quirino
Professor: Adriano Doimo E-MAIL: adriano.doimo@etec.sp.gov.br Data: 11/10/2013

O resultado exibido será:

Clicando no botão CONSULTA, temos:

DISCIPLINA: Programação de Computadores I ETEC Bento Quirino


Professor: Adriano Doimo E-MAIL: adriano.doimo@etec.sp.gov.br Data: 11/10/2013

MISSÃO...
1) Crie um (ou alguns) projeto(s) em C#, implementando a rotina de consulta em alguns dos seus
bancos de dados criados anteriormente nas aulas de PostgreSQL.

2) Faça uma tela parecida com a demonstrada abaixo e ao invés do código de conexão do banco
estar no próprio formulário, o próprio usuário digitará as informações nos TEXTBOX.

Enviar para email adriano.doimo@etec.sp.gov.br e ef.melo@hotmail.com

Assunto: ATIVIDADE4 - C# CONEXÃO POSTGRESQL - NOME DUPLA - PC -


ETEC

DISCIPLINA: Programação de Computadores I ETEC Bento Quirino

Você também pode gostar