Se você trabalha bastante com MariaDB (MySQL), compreende a necessidade de um bom cliente de banco de dados. Eu já trabalhei com muitos RDBMs diferentes em minha carreira. Ao longo dos anos, eu aprendi o que esperar de um bom cliente RDBMS, e Sequel Pro – um cliente de banco de dados livre que funciona em OSX – tem a maioria deles.
A maioria dos clientes RDBMS vai deixar você executar um SQL válido. Você pode escrever suas próprias declarações Create, Alter, ou qualquer outra Data Definition Language (DDL) e executá-las na janela de consulta. Uma boa ferramenta – como Sequel Pro – vai tornar isso mais fácil para você.
Sequel Pro brilha nesse mercado ao oferecer a área “Estrutura”. Você pode examinar e alterar a estrutura de qualquer tabela existente e criar novas simplesmente definindo as entidades no formulário fornecido. Todas as opções que você pode definir em uma declaração Create/Alter podem ser configuradas a partir desse formulário.
DDL feito à mão é uma lindeza, mas pode ser terrível, especialmente se – como a maioria dos desenvolvedores que conheço – você só fizer isso de vez em quando. Ter uma ferramenta que ajuda você a criar seu banco de dados é uma coisa maravilhosa.
Claro que isso não é um substituto para uma boa ferramenta “Entity-Relationship Diagramming” (ERD). Se o seu banco de dados terá mais do que 5-7 tabelas, você vai precisar diagramá-lo. Existem algumas boas ferramentas no mercado para fazer isso, mas não espere isso do seu cliente.
Fácil visualização de dados
Quando eu comecei a aprender sobre RDBMS, estava trabalhando com uma linguagem chamada FoxPro. FoxPro foi incrível, porque era uma linguagem construída em torno de um RDBMS. Uma das grandes características do FoxPro é o que chamamos de “Danger Browser”. No modo Browse, era possível simplesmente abrir uma tabela e percorrer os dados. A vantagem é que era muito útil, especialmente em desenvolvimento, ser possível visualizar apenas os dados brutos. A desvantagem é que você procurava pelos dados ao vivo. Um tecla digitada errada e você poderia facilmente acabar com os dados em um campo.
Sequel Pro lhe dá o poder de navegar com a sua área “Conteúdo”. Quando você clica em “Conteúdo”, pode selecionar qualquer tabela e navegar em 100 registros de cada vez. Assim como no Foxpro, os dados são ao vivo e você pode editá-los – acidentalmente ou de propósito – à direita no grid.
Uma característica muito legal da função de navegação do Sequel Pro é que você pode aplicar um filtro simples. Na parte superior do grid existem 3 campos.
- Uma drop down de todos os campos da tabela atual.
- Uma lista de condicionais comuns como “iguais”, “contém”, “começa com” etc.
- Uma caixa de texto para inserir um valor.
Com esses três campos, você pode filtrar rapidamente os dados para apenas os registros para os quais você está olhando. Depois de ter os dados filtrados, você ainda está no modo de navegação perigosa, e ainda é possível editar os dados ao vivo.
Executar queries facilmente
Este é o principal objetivo do cliente de banco de dados: executar Data Manipulation Language. (DML) Selecionar declarações, atualizações, deletes, inserts. O coração de qualquer aplicação CRUD. O objetivo de ter um cliente é que você possa facilmente executar esses tipos de declarações. Independentemente se você está fazendo manutenção no banco de dados, ou testando a consulta, um bom cliente de banco de dados irá tornar essa tarefa fácil.
Sequel Pro faz um ótimo trabalho. As consultas podem ser facilmente executadas usando a área de “Query”. As linhas resultantes – se a consulta retorna um conjunto de resultados – podem facilmente ser exportadas para CSV ou mesmo instruções SQL.
A janela de consulta pode conter várias instruções. Nem todos os clientes RDBMS permitirão que você faça isso. Não desmereça essa ferramenta.
O botão “Executar” muda com base no contexto.
- Se o cursor estiver em uma declaração, então você pode “Run Current” (executar o atual).
- Se você tiver selecionado texto, – independentemente de saber se é uma DML sintaticamente válida – é oferecida a opção de “Run Selection” (executar a seleção).
- Se o cursor estiver logo após uma declaração, é oferecida a opção “Run Previous” (executar o anterior).
A única coisa a observar é terminar corretamente suas declarações com um ponto e vírgula. Sem isso, Sequel Pro irá entender que duas declarações estão juntas, mesmo se não houver linhas em branco entre elas.
Gerenciar usuários facilmente
O gerenciamento de usuários no MySQL sempre foi terrível. O cliente de linha de comando que vem com o MySQL não torna essa tarefa mais fácil. Sequel Pro torna. Fica muito fácil de gerenciar usuários, mas também os hosts aos quais um usuário pode se conectar. Definir as permissões para qualquer combinação usuário/host é fácil, e o fluxo é óbvio para qualquer um que já trabalhou com MySQL.
As versões anteriores do Sequel Pro tiveram um problema em que o programa iria abortar depois de definir permissões de usuário. As permissões haviam sido definidas, mas, para confirmá-las, você tinha que reiniciar o programa. A versão mais recente – Sequel Pro 1.1, Build 4499 – parece ter eliminado esse problema.
Conclusão
Sequel Pro é um bom cliente Mariah DB (MySQL). Infelizmente, ele só está disponível para OSX. A versão atual, 1.1, é bastante sólida no El Capitan. Eu não tive um único problema com ele.
Sequel Pro é um dos 2-3 programas que eu tenha aberto em todos os momentos, e geralmente ligado a diversos bancos de dados. É uma ferramenta em que eu tenho confiado e que é fácil para mim para recomendar a qualquer desenvolvedor.
***
Cal Evans faz parte do time de colunistas internacionais do iMasters. A tradução do artigo é feita pela redação iMasters, com autorização do autor, e você pode acompanhar o artigo em inglês no link: http://blog.calevans.com/2015/10/07/a-superficial-review-of-sequel-pro/