sábado, 4 de fevereiro de 2012

Firebird - Extraindo o Metadata


Neste artigo irei dar uma dica muito importante em se tratando de Banco de Dados Firebird, como extrair o Metadata, ou seja, gerar o Script de uma base de dados.
Utilizaremos a ferramenta de gerenciamento Ibexpert Completa Trial, válida por 45 dias, encontrada no seguinte endereço: www.ibexpert.com.
Devido ao fato desta ferramenta possuir um processo de instalação rápido e fácil não iremos abordar isso no artigo, focaremos apenas na exportação do Banco de Dados.

Para eventuais testes utilizaremos o Banco de Dados Employee, encontrado por padrão na pasta:

C:\Arquivos de programas\Firebird\Firebird_1_5\examples\Employee.fdb

Depois de registrado o Banco de Dados, deixe-o como ativo e na região superior iremos acessar o menu Tools/Extract Metadata. Aparecerá uma janela chamada “Extract Metadata”, veja Figura 01.

Figura 01. Extraindo o Metadata.

Em Meta Objects encontramos os objetos do Banco de Dados, como por exemplo os domínios, as tabelas, visões, entre outras coisas, no nosso caso específico iremos extrair o Banco de Dados inteiro, para isto escolheremos a opção “Extract All”. Na próxima aba, denominada Data Tables, selecionaremos todas as tabelas envolvidas, na realidade são os registros envolvidos. Para isto clique no botão onde possui duas setinhas para podermos selecionar tudo. (Figura 02)

Figura 02. Extraindo o Metadata.

Em “Where Clause For” podemos definir uma condição para extrairmos os dados de determinadas tabelas, neste caso não definiremos nada, iremos gerar o script de todos os registros encontrado no Banco de Dados.

Na aba Options encontramos várias opções, em File Name defina um lugar para ser salvo o script, no meu caso defini como:

D:\Thiago\Script.sql

Em seguida configuraremos conforme abaixo:

General Options (Opções gerais)

- Generate ‘create database’ statement.
- Include Password in ‘connect’ and ‘create database’ statements.

Metadata Options (Opções de Metadados)

- Set Generators
- Include Objects Descriptions
- Decode Domains

Data Options (Opções de Data)

Deixe o formato da data como: YYYY-MM-DD e da Data/Hora como: YYYY-MM-DD HH:NN:SS

É importante marcar a opção “Extract Blobs”, para assim podermos extrair os registros de campos do tipo BLOB (uma das funcionalidades encontradas apenas na versão completa do Ibexpert).(Figura 03)

Figura 03. Salvando o Metadata.

Após seguir estes passos pressione a tecla F9 para iniciar o processo. Como o Banco de Dados Employee tem poucas tabelas e registros o processo será bem rápido. Caso não ocorra nenhum erro aparecerá uma mensagem parecida com a da Figura 04, pedindo para ler o Script, escolha a opção “No” e em seguida feche a janela.

Figura 04. Extração Completada Com sucesso.
  
Recuperando o Metadata

A ferramenta Ibexpert é muito fácil e intuitiva de se trabalhar, para rodarmos o script basta escolhermos a opção Tools/Script Executive e na opção “Load From File” carregaremos o Script do Banco de Dados. (Figura 05)

Figura 05. Rodando o Script.
  
Na linha CREATE DATABASE definimos o caminho e o nome do Banco Dados onde  será criado.
Com isto estaremos criando todos os objetos e inserindo todos os registros no Banco de Dados. Após realizar estes passos pressione a tecla F9 e se não ocorrer nenhum problema aparecerá uma janela parecida com a Figura 06 dizendo que o Script foi gerado com sucesso!

Figura 06. Script Executado com sucesso.
  
Pronto, agora precisamos apenas registrar o banco de dados criado em nosso Ibexpert, para isto escolha Database/ Register Database, em Database File coloque o caminho do mesmo, defina o usuário, senha e não esqueça de escolher a DLL fbclient em “Client Library File”. Veja Figura 07 para maiores detalhes.

Figura 07. Registrando o Banco de Dados.

Conclusão

Vimos que com facilidade conseguimos extrair o Metadata de um Banco de Dados Firebird utilizando a ferramenta Ibexpert. Muitos problemas de corrupções de Banco de Dados são corrigidos desta maneira.

Nenhum comentário:

Postar um comentário