Olá pessoal.

Hoje vou falar sobre algo que pode ser bem interessante para administradores de banco de dados.

Muitas vezes nós DBA's recebemos solicitações para geração de relatórios em ambiente de produção (pelo menos onde trabalho isso é muito comum).

A questão é que sempre utilizamos o SQL*Plus para solicitações dos analistas e, na maioria das vezes, é desejado que a projeção da informação seja salva em planilha.

Para resolver essa situação, podemos utilizar um tipo de saída do SQL*Plus que torna o layout do arquivo gerado mais "apresentável". Na verdade, a projeção será gerada dentro de um código HTML, mas podemos gerá-lo como um XLS por se tratar de uma estrutura em tabelas através do markup html.

O comando, em uma forma bem básica, é o seguinte:

set feed off markup html on
spool c:\temp\relatorio.xls
SELECT * FROM hr.employees;
spool off
set markup html off

O arquivo gerado pode ser aberto no MS-Excel pois o spool foi para um ".xls".

Para se ter uma melhora na apresentação do arquivo, pode-se editá-lo retirando a consulta executada (que deve aparecer no início do arquivo) e o comando "spool off" (que deve aparecer no final do arquivo).

Bom pessoal, fica a dica!

Até a próxima.

Referências:

Oracle – Generating HTML Reports from SQL*Plus. Disponível em: http://docs.oracle.com/cd/B13789_01/server.101/b12170/ch8.htm. Acessado: 102/07/2013.