ASP - Acessando dados no Firebird 1.5


Neste artigo vou mostrar com realizar uma conexão com o FireBird 1.5 usando Active Server Pages - ASP.

A primeira coisa que você deve fazer , se ainda não o fez, é instalar o FireBird 1.5. Pegue-o no link abaixo , é gratis...

firebird-win32 - O próprio FireBird para a versão Windows (versão - 1.5.1).

Para saber mais sobre como instalar o FireBird , leia o artigo : VB - Acessando o FireBird com ADO.

Nota: Se quiser uma documentação introdutória sobre o FireBird em português , pegue aqui -> FireBird_portugueses.pdf

Você vai precisar ter instalado o Personal Web Server ou o IIS-Internet Information Server para poder executar as páginas ASP. Para saber mais sobre ASP e sobre como instalar o PWS e o IIS leia os artigos :

Afinal , o que é ASP ?
O que eu preciso para trabalhar com ASP ?
Como configurar o Personal Web Server ?
Os objetos ASP.
ASP.NET - Instalando e Configurando o Internet Information Services - IIS.

Para mostrar outra forma de obter o mesmo resultado , neste artigo eu vou usar um driver ODBC para fazer a conexão via ASP. No artigo anterior sobre FireBird eu usei um driver OLE DB e a ferramenta IB_SQL para criar o banco de dados.

Neste artigo vou usar a ferramenta IB Expert Personal Edition , uma versão free de uma ferramenta que permite administrar o FireBird ; ela possui limitações mas pode ser usada para o propósito deste artigo que é criar banco de dados , tabelas e inserir registros..

Instalar o IB Expert é simples , basta seguir as instruções de instalação. Com ele instalado vamos o que interessa...

Criando banco de dados e tabelas no FireBird

Ao usar o IB Expert devemos criar e em seguida registrar o banco de dados para que ele possa ser reconhecido pela ferramenta. Para criar um banco de dados , abra o IB Expert e clique no Menu em DataBase opção Create DataBase. A janela de diálogo Create Database irá surgir , preencha os dados conforme abaixo para criar o banco de dados Cadastro.gdb na pasta d:\teste:

Indique as opções conforme a figura ao lado:

Server : Informe Local

DataBase : o nome e localização do banco de dados a ser criado

UserName : informe SYSDBA

Password : informe masterkey

SQL : Informe Dialect 3

nota : a extensão .gdb indica um arquivo no formato Interbase ; a extensão .fdb indica o formato FireBird.

Ao clicar no botão OK a janela para registrar o banco de dados vai se abrir automaticamente (veja figura abaixo). Preencha-a com os dados conforme figura a seguir:

Informe a versão do Server : FireBird 1.5

Database Alias -> Informe cadastro

e clique no botão : Register

Após ter registrado o Banco de dados Cadastro selecione o seu nome que aparece no painel a esquerda; os objetos do banco de dados serão exibidos ; e a seguir clique com o botão direito do mouse sobre o objeto Table ; escolha New Table para poder criar uma nova tabela chamada clientes no banco de dados cadastro:

Na janela Table basta informar o nome da tabela na caixa NEW_TABLE

Para cada campo a ser incluído clique no ícone Add Field do menu e preencha com os dados para o campo desejado.

Abaixo temos a janela TABLE preenchida para criar a tabela clientes com as definições de campos:

A estrutura da tabela clientes é a seguinte :

codigo - chave primária - Inteiro - auto incremental

Nome - varchar(40)

Endereco - varchar(50)

Telefone - varchar(20)

Email - varchar(100)

Obs: Para mais detalhes sobre a operação do programa leia o manual

Agora clique na opção Compile do menu e será gerada a tabela e com a chave primária e com o campo auto-incremento conforme abaixo.

Perceba que foi criado um trigger para a chave primária.

Isto é feito quando você estiver definindo o campo da tabela na opção Auto Inc na Aba Generetor opção - Create Generator e na Aba Trigger opção Create Trigger

 

Para encerrar clique em Commit e pronto nossa tabela Clientes estará criada e pronto para ser usada.

Nota:

Para incluir registros na tabela criada podemos usar o SQL Editor ou o Script Executive. Usando o Script Executive a primeira coisa a fazer é abrir o banco de dados , fazemos isto na opção Script selecionado : Add CONNECT statement que gera a instrução :

SET NAMES NONE;
CONNECT 'D:\teste\Cadastro.gdb' USER 'SYSDBA' PASSWORD 'masterkey';

A seguir incluimos a instrução SQL Insert Into na expressão para incluímos um registro na tabela clientes como segue:

SET NAMES NONE;
CONNECT 'D:\teste\Cadastro.gdb' USER 'SYSDBA' PASSWORD 'masterkey';
insert into Clientes values (1,'Macoratti','Rua Projetada , 100','11-555-7070','macoratti@yahoo.com')

O resultado pode ser visto no SQL Editor através da execução do comando SQL Select * from Clientes:

Usando a linha de comando para criar banco de dados e tabelas no FireBird

Se você ama uma linha de comando então abaixo os comandos que você usaria para obter o mesmo efeito via janela de Comando do SO.

Você ja percebeu que a conta do administrador padrão do FireBird é SYSDBA que a senha padrão é masterkey. Vamos usar estes valores :

Para criar um banco de dados :(Se o seu FireBird foi instalado em C:\Program Files\Firebird\Firebird_1_5\bin> )

C:\Program Files\Firebird\Firebird_1_5\bin>isql
SQL>create database 'c:\macorati.fdb' user 'SYSDBA' password 'masterkey';
SQL>exit;

Para criar um usuário chamado maco e uma senha - teste - para o banco de dados criado acima digite :

C:\Program Files\Firebird\Firebird_1_5\bin> gsec -user sysdba -password masterkey
GSEC>add maco -pw teste

Instalando o driver ODBC

O driver ODBC que vamos usar pode ser obtido na página http://firebird.sourceforge.net/ no Menu Downaload | Firebird ODBC Driver.

Faça o download e siga as orientações para instalar o driver. Com o driver instalado temos que registrar o driver ODBC em uma fonte de dados ODBC. No menu Iniciar do Windows (XP) selecione Painel de Controle , clique em Desempenho e Manutenção e depois em Ferramentas administrativas clique em Fontes de dados ODBC:

Administrador da fonte de dados ODBC
Lista de drivers instalados

Clique no botão Adicionar e selecione o driver para o FireBird que deve aparecer na lista de drivers instalados no sistema.

A janela FireBird ODBC Setup será aberta , preencha os dados solicitados conforme abaixo:

DSN -> FireBird
DataBase -> o caminho e nome do banco de dados Cadastro que criamos.(d:\teste\Cadastro.gdb)
DataBase Account -> SYSDBA
PassWord -> masterkey

A seguir para verificar se tudo esta correto clique no botão -> Test Connection

Uma pequena janela indicando que a conexão foi feita com sucesso deverá aparecer para você.

Nota : Para mais detalhes sobre como configurar o driver ODBC leia a documentação que acompanha o driver.

Agora já esta tudo pronto para criarmos as páginas ASP que irá fazer a conexão (com e sem um DSN) com o FireBird e o banco de dados Cadastro.gdb criado.

No arquivo de documentação do driver existem exemplos de strings de conexões que você pode usar . Veja abaixo a relação :

Exemplos de strings de conexão ODBC :

1. Open("DSN=mcsAddress;")

2. Open("DSN=mcsAddress; UID=MCSSITE; PWD=mcssite;")

3. Open("DSN=mcsAddress; UID=MCSSITE; PWD=mcssite; DBNAME=172.17.2.10:/usr/local/efldata/mcsAddress.fdb;")

4. Open("DRIVER=Firebird/InterBase(r) driver; DBNAME=172.17.2.10:/usr/local/efldata/mcsAddress.fdb;")

5. Open("DRIVER=Firebird/InterBase(r) driver; UID=MCSSITE; PWD=mcssite; DBNAME=172.17.2.10:/usr/local/efldata/mcsAddress.fdb;")

6. Open("DRIVER=Firebird/InterBase(r) driver; UID=MCSSITE; PWD=mcssite; DBNAME=dummy;")

dummy – é um alias derivado do arquivo aliases.conf do FireBird.Se as variáveis de ambiente ISC_PASSWORD e ISC_USER forem definidas o driver irá usá-las

Usando um editor de texto qualquer (bloco de notas ) digite o código abaixo para acessar os dados da tabela clientes do banco de dados cadastro.gdb dando o nome fbasp.asp ao arquivo. A seguir salve o arquivo no seu diretório de trabalho virtual (o padrão é \inetpub\wwwroot)

<%
set strConexao = CreateObject("ADODB.Connection")
strConexao.Open("DRIVER=Firebird/InterBase(r) driver; UID=SYSDBA;PWD=masterkey; DBNAME=localhost:D:\teste\Cadastro.gdb")

Set Clientes = Server.CreateObject("ADODB.Recordset")
Set Clientes = strConexao.Execute("SELECT * FROM Clientes")

%>

<html>
<head>
<title>Conectando o FireBird via ASP</title>
</head>
<body>
<h2>Acessando dados no FireBird 1.5 via ASP</h2>
<hr>
Nome : <%=Clientes("Nome")%><br>
Endereço : <%=Clientes("Endereco")%><br>
Telefone : <%=Clientes("Telefone")%><br>
Email : <%=Clientes("Email")%>
<hr>
<i>Dados extraídos da tabela Clientes do banco de dados Cadastro.gdb</i>
</body>
</html>
<%
Clientes.Close
strConexao.Close
Set strConexao=Nothing
%>

Arquivo fbasp.asp

Executando a página no IIS (ou PWS) local temos o resultado:

Nota: Para criar páginas web dinâmicas o servidor onde suas páginas ASP forem hospedadas deve dar suporte e acesso ao FireBird.

Estou executando o arquivo fbasp.asp que foi salvo no meu diretório virtual fb_asp.

Você acabou de ver dados extraídos de uma tabela de banco de dados no FireBird e exibidos em uma página HTML via ASP.

Para incrementar o código com mais recursos (incluir , alterar e excluir) use o seu talento e bom estudo.

Aguarde mais artigos sobre FireBird.


José Carlos Macoratti