|
Acadêmico(a): Fabiano Bender |
Título: Ferramenta para Depuração de Funções PL/PgSQL |
|
Introdução: |
Louden (2004, p. 2) afirma que a partir do final da década de 40 tornou-se necessário escrever sequências de código para que os computadores efetuassem as computações desejadas. Com o passar do tempo, os programas foram ficando maiores e mais complexos, surgindo a necessidade de usar Sistemas Gerenciadores de Banco de Dados (SGBD). Conforme expõe Milani (2008, p. 328), o SGBD acrescenta ao banco de dados do tipo arquivo uma nova camada que é responsável por garantir a integridade dos dados, além da segurança e da concorrência no acesso aos dados.
Para efetuar o armazenamento e a manutenção dos dados, os SGBDs fazem uso de linguagens. Ao utilizar uma linguagem procedural (Procedural Language - PL), o SGBD não está sendo utilizado apenas para armazenamento dos dados. Segundo Oliveira (2007, p. 574), utilizando PL pode-se agrupar sequencialmente uma série de comandos, dentro de uma única função que estará armazenada dentro do SGBD e que poderá ser executada a qualquer momento, executando todos os comandos contidos dentro de si. Desta forma, junta-se a funcionalidade da linguagem PL com a facilidade de uso da linguagem Structure Query Language (SQL), assim economizando tempo, porque diminui a quantidade de vezes que a máquina que fez a requisição e o servidor de dados irão se comunicar, aumentando consideravelmente o desempenho do sistema, pois o SGBD irá desviar-se menos para esta tarefa e mais para o processamento da requisição efetuada.
A facilidade do uso de PL com SQL gerou um problema: não é fácil detectar erros nos programas desenvolvidos em PL, principalmente pela falta de ferramentas de depuração. Pode-se afirmar que a depuração de programas é um trabalho árduo nos diversos SGBDs que existem, ainda mais no SGBD PostgreSQL, uma vez que o mesmo dispõe somente de uma ferramenta de depuração, que além de ser paga, possui suporte apenas para a versão 8.3.
Neste sentido é proposto o desenvolvimento de uma ferramenta capaz de depurar funções implementadas em PL/PgSQL , independentemente da versão do SGBD PostgreSQL. A ferramenta deverá compilar as funções PL, detectando e diagnosticando erros léxicos, sintáticos e semânticos. Também deverá ser capaz de executar as funções passo a passo (comando a comando), mostrando o valor das variáveis declaradas.
|
|
|