Ferramentas para o PostgreSQL

From PostgreSQL wiki
Jump to navigationJump to search

Ferramentas

Algumas ferramentas de projeto, administração e modelagem, que facilitam a vida de quem trabalha com o banco de dados PostgreSQL. Agradecendo a Diogo Biazus, membro do Grupo Global de Desenvolvimento do PostgreSQL, pela contribuição dada a esta coluna.

As ferramentas estão listadas abaixo separadas em 3 categorias:

  • 1. Multiplataforma: rodam em mais de uma plataforma de software (sistema operacional);==
  • 2. Linux: rodam em máquinas com o sistema operacional GNU/Linux e
  • 3. Windows: rodam em máquinas com o sistema operacional Microsoft Windows.

1. Multiplataforma

  • PGAccess: esta é a interface gráfica para usuário (GUI) original do PostgreSQL, no estilo do navegador de banco de dados do MS Access, escrito em Tcl/Tk. Permite navegar, adicionar e editar tabelas, visões, funções, seqüências, bases de dados e usuários, assim como consultas auxiliadas por gráficos (QBE).
  • phpPgAdmin: um clone do popular phpMyAdmin, otimizado para o PostgreSQL. Como o próprio nome já diz, foi criado em PHP. Esta é uma ferramenta administrativa muito boa, robusta, e existe uma versão totalmente em português. Funciona muito bem, tem muitas funcionalidades e é código livre.
  • PGAdmin III: uma interface completa de administração do PostgreSQL, praticamente o cliente oficial.
  • OpenOffice.org: o OpenOffice.org 2 traz o aplicativo Base que via JDBC permite uma manipulação bem avançada de bases de dados possibilitando o desenvolvimento de formulários e relatórios bem complexos.
  • Xpg: interface de administração do banco de dados PostgreSQL baseado em Java, com acesso a tabelas e entrada de dados, interface para consultas e habilidade para exportar o resultado das mesmas para relatórios em HTML. Porém tem algumas limitações, algumas funções como criação de índices não podem ser feitas visualmente. É de código livre e tem um instalador RPM.
  • tedia2sql: conversor de diagramas UML do programa Dia (muito utilizado em plataformas POSIX) para scripts SQL. Esta é a ferramenta que permite criar diagramas de entidade relacional no Dia, e depois converter este modelo para um script SQL, inclusive para PostgreSQL.
  • PGCli: interface de linha de comando com suporte a autopreenchimento de comandos e destaques (highlighting). Se propõe a ser visualmente mais fácil de trabalhar exibindo destaques (highlighting) para a notação SQL conforme for digitando os comandos no console. Contribuição de Marcelo Costa - Reportagem InfoQ

1.1 Todas plataformas que suportam Java

  • Druid III: modelagem espartana.
  • IBM Rational Data Architect: dicionário de dados, modelagem baseados em Eclipse. Suporte não nativo a PostgreSQL, via JDBC.
  • Squirrel SQL: o Squirrel SQL é uma interface gráfica em Java que permite visualizar e manusear qualquer banco de dados que suporte JDBC, como o PostgreSQL. Recursos adicionais são implementados via plugins.
  • Aqua Data Studio: outro freeware baseado em Java com um grande número de recursos sofisticados. Sua especialidade está em criar, editar e rodar scripts SQL. Possui cores diferenciadas para sintaxe e completa comandos automaticamente.
  • DBVisualizer: para quem quer uma ferramenta que funcione com vários bancos de dados diferentes, seja simples para rodar comandos SQL e visualizar a estrutura do banco de dados essa é a ferramenta certa. Não possui funcionalidades administrativas, é um visualizador.
  • DbWrench: uma interface espartana, para fazer a modelagem. Suporta engenharia reversa e pode ser usado gratuitamente por 30 dias.
  • Power Architect: Ferramente em Java para modelagem de dados com suporte a engenharia reversa. Licença GPL3

2. Linux

  • pgFouine: análise de registros de execução.
  • Data Architect: ferramenta de modelagem, pode ser usada para gerar bases a partir de um modelo ER (Entidade de Relacionamento). Gera o script SQL e funciona bem com o PostgreSQL, conecta com o banco através do Unix ODBC. Não é código aberto, mas o preço é muito bom para o potencial da ferramenta. Feito em Qt.
  • Red Hat: um tanto quanto polêmico, mas a Red Hat lançou seu banco de dados baseado no PostgreSQL, beneficiando-nos com novas ferramentas gráficas para projeto e administração de bases de dados.
  • TOra: originalmente, uma interface de administração de banco de dados Oracle, com habilidades limitadas para administrar bases de dados PostgreSQL (tabelas, visões e funções, somente). Porém, o sofisticado editor de funções do TOra irá funcionar para o PostgreSQL.

3. Plataforma Windows

  • dbForge Studio for PostgreSQL ferramenta GUI para gerenciar e desenvolver bancos de dados e objetos.
  • Embarcadero ER Studio: uma das mais populares ferramentas de modelagem.
  • PGExplorer: esta é outra interface de administração de banco de dados PostgreSQL, muito parecida com o PGAdmin II.
  • DBTools: é uma ferramenta de gerenciamento com ótima usabilidade, desenvolvida por uma empresa brasileira, mas o software e a documentação estão em inglês. Se você for um usuário do antigo DBManager (versão 1.0.15 ou anterior) você irá se surpreender com o DBTools.
  • Zeos Database Explorer: permite a administração do banco de dados PostgreSQL com a ajuda de uma interface aperfeiçoada com controles avançados. O número de conjuntos de comandos incluem serviços de migração de bases de um ambiente para outro, assim como um utilitário de cópia de segurança da base de dados e restauração da mesma.
  • PgManager: basicamente, uma versão com mais recursos dos conhecidos PGAdmin II e PGAccess. Agrega suporte a edição de gatilhos e restrições, acha metadados e monitora consultas. Também inclui ferramentas de importação/exportação de múltiplos formatos de dados.
  • Microsoft Access: exatamente! Você pode usar o Microsoft Access como interface para administração de um banco de dados PostgreSQL. Contudo, você terá que conviver com as limitações impostas pelo ODBC com relação aos recursos que o programa oferece.
  • ERWin: aparentemente, um dos mais avançados e utilizados modeladores de entidade relacional. Não possui suporte direto ao PostgreSQL, porém, seus recursos flexíveis geram, com pouquíssimas alterações, scripts prontos para o PostgreSQL. Para que o ERWin gere um script compatível com o PostgreSQL, basta criar os domínios necessários em "/Domain Dictionary/" no menu "/Model/" para este banco de dados, como por exemplo SERIAL, INT2 ou SMALLINT, INT4 ou INTEGER, etc.

EXEMPLO - criar um novo domínio "Serial": Em "/Domain Dictionary/", na ficha "/General/" ao lado, escolha em "/Domain Parent/" a opção "/Number/" (nas versões mais recentes um botão "New…" abre uma caixa com esta mesma função); Na ficha "/ORACLE/", em "/Oracle Datatype/" substitua o conteúdo que estiver aparecendo por "SERIAL"; Clique em OK. A partir daí, pode-se criar as tabelas com campos de tipos específicos para o PostgreSQL, ou seja, ao criar as colunas em uma tabela através da caixa "/Columns/", na ficha "/General/" basta escolher o domínio que criou (no caso "Serial"), que então, o tipo relacionado aparecerá automaticamente na caixa "/ORACLE/" ("SERIAL"). Ficam somente alguns poucos detalhes a serem corrigidos ao gerar o script: 1. Substituir "ASC" por "" quando gerar índices;BR 2. Substituir "ADD (" por "ADD " e ") ;" por " ;" (ambos sem os parênteses) na criação de restrições (/constraints/);BR 3. Para criar gatilhos (/triggers/), use o código abaixo na caixa "/Triggers/", ficha "/Code/":

 {{{
DROP TRIGGER TableName;
CREATE TRIGGER %TriggerName Actions(" OR ") ON %TableName %Scope;
EXECUTE PROCEDURE  f_%TriggerName();
  }}}

…o nome da função será o nome do gatilho precedido de "f_" (detalhes sobre gatilhos veja na documentação do PostgreSQL). Depois é só escrever a função e pronto.

  • DeZign for Databases: esta é uma ferramenta de desenvolvimento de banco de dados que usa diagramas de entidade de relacionamento para modelagem e, gera automaticamente esquemas em SQL inclusive para o PostgreSQL. Suporta domínios, gera relatórios e dicionário de dados.
  • Quest Toad Data Modeller: antigo CaseStudio, esta é outra ferramenta de gerenciamento e projeto de banco de dados utilizando modelagem de diagramas de entidade relacional, também gera scripts SQL para o PostgreSQL e contém alguns recursos diferenciais como por exemplo, suporte a JScript e VBScript.
  • Genexus: modelador de banco de dados e gerador de aplicações. Ferramenta muito utilizada por grandes e médias empresas, mas amplamente criticada pela (baixa) qualidade do código e dos modelos tipicamente gerados.
  • Sybase Power Designer: ferramenta avançada de modelagem com suporte ao PostgreSQL, incluindo tabelas, visões, gatilhos, restrições e integridade referencial. Base para o PowerAMC (método Merise) e Quest QDesigner (substituído pelo Toad Data Modeller).

Texto criado por Diogo Biazus e editado por Walter Cruz, Matheus Weber, Fernando Ike e Leandro Dutra