Você está na página 1de 6

Passo a Passo Visual C# X Firebird

Para desenvolvermos um sistema em Visual C#, que acesse um banco de


dados Firebird é necessário que esteja instalado na máquina os seguintes
programas:
- Visual C# - para desenvolvimento do programa.
- Firebird – programa de banco de dados
- IB Expert – programa usado para criação do banco de dados, tabelas e
campos em um ambiente gráfico.
- FirebirdSql.Data.FirebirdClient.dll – biblioteca de comando para acesso do
Visual C# para o firebird
- FBGuardian.exe – roda como serviço do Windows para prover comunicação
entre os programas.

Certifique-se que o FBGuardian.exe esteja rodando e para isso veja se há


algum ícone próximo ao relógio do Windows, ou veja pelo Gerenciador de
tarefas do Windows, na guia Processos e veja se ele está rodando, você pode
também verificar pelo services.msc podendo ser acessado digitando pelo iniciar
/ executar. caso verifique que ele não esteja rodando, abra o meu computador
e acesse C:\Arquivos de programas\Firebird\Firebird_1_5\bin e execute o
arquivo fbguard.exe. Neste exemplo uso o Firebird na versão 1.5.

Outro detalhe importante é obter as DLL e descompactar em


C:\WINDOWS\Microsoft.NET\Framework para posteriormente fazermos uma
referencia a esta biblioteca.

Um pouco do IB Expert
A finalidade do IB Expert é criar o banco de dados, tabelas e campos em um
ambiente visual.
Acesse o IB Expert e clique no menu DataBase e clique na opção Create
Database e configure a tela conforme abaixo

Usuario SYSDBA e Password masterkey


Selecione o tipo de servidor e clique em Test Connect

Após verificar que todos os testes passaram clique em Cancel para fechar esta
tela e clique em Register.
Para cliar uma tabela clique com o botão direito em Tables, abaixo da estrutura
que apareceu do banco que acabou de criar.

Informe o nome da tabela, e informe o nome dos campos em Field Name o tipo
de dados que irá armazenar em Field Type, o tamanho do campo texto em Size
clicar 2x na coluna PK para definir o campo chave e a coluna Not Null clicar 2x
para informar qual o campo que terá preenchimento obrigatório.

No Visual C#

Após termos criado a nossa solução será necessário criar uma referencia para
este tipo de banco de dados

Figura 1 – Adicionando Referencias na Solution Explorer


Conforme a figura 1 apresenta, devemos clicar com o botão direto dentro da
Solution Explorer, sobre o nome da solução e selecionarmos a opção Add
Reference...

Figura 2 – Janela Add Reference

Na janela apresentada pela figura 2 serve para selecionar a dll da biblioteca e


temos que apontar para o mesmo caminho onde descompactamos o arquivo
de biblioteca que copiamos do link citado anteriormente. Como foi sugerida a
utilização da pasta C:\WINDOWS\Microsoft.NET\Framework para armazenar
estes arquivos.
Na janela clique na aba Browse , localize e selecione o arquivo
FirebirdSql.Data.FirebirdClient.dll, após selecionado confirme clicando em OK.

Vamos iniciar a programação fazendo uma consulta ao banco de dados,


coloque uma DataGridView e um botão, clique 2x no botão e insira o código
abaixo:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
// informamos que estamos usando a biblioteca
using FirebirdSql.Data.FirebirdClient;

namespace aula01
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button2_Click(object sender, EventArgs e)


{
string strconn =
"User=SYSDBA;Password=masterkey;Database=C:\\UNOPAR\\DADOS.FDB;D
ataSource=localhost;Port=3050;Dialect=3;Charset=NONE;Role=;Conne
ction lifetime=0;Connection timeout=15;Pooling=True;Packet
Size=8192;Server Type=0";
FbConnection conn = new FbConnection(strconn);
FbCommand cmd = new FbCommand("select * from amigos",conn);
FbDataAdapter DA = new FbDataAdapter(cmd);
DataSet DS = new DataSet();
conn.Open();
DA.Fill(DS, "amigos");
dataGridView1.DataSource = DS;
dataGridView1.DataMember = "amigos";
conn.Close();
}
}
}

A programação para adicionar um campo no banco de dados.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using FirebirdSql.Data.FirebirdClient;

namespace aula01
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)


{
string strSQL = "";
string s =
"User=SYSDBA;Password=masterkey;Database=C:\\UNOPAR\\DADOS.FDB;DataSou
rce=localhost;Port=3050;Dialect=3;Charset=NONE;Role=;Connection
lifetime=0;Connection timeout=15;Pooling=True;Packet Size=8192;Server
Type=0";
FbConnection con = new FbConnection(s);
FbCommand cmd = new FbCommand();
FbParameter[] prmParametro = new FbParameter[2];
prmParametro[0] = new FbParameter("@CODIGO", txbCodigo.Text);
prmParametro[1] = new FbParameter("@NOME", txbNome.Text);
strSQL = "insert into amigos (CODIGO, NOME) values (@CODIGO, @NOME)";
foreach (FbParameter p in prmParametro)
{
cmd.Parameters.Add(p);
}
try
{
con.Open();
cmd.Connection = con;
cmd.CommandType = CommandType.Text;
cmd.CommandText = strSQL.ToString();
cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
if ((cmd != null))
{
cmd.Dispose();
}
if (con.State != ConnectionState.Closed)
{
con.Close();
con.Dispose();
}
}
}
}
}

Agora é só pressionar F5 e realizar os testes.

Até a próxima

Professor Emerson Ricardo Flores