Novidades no DataGrip 2019.1

Novo suporte para DBMS

Nesse ciclo de lançamento, dedicamos grande foco ao suporte para vários novos bancos de dados.

O Greenplum é um banco de dados de análise baseado no PostgreSQL. Atualmente, ele é desenvolvido pelo Pivotale pela comunidade open source.

O Vertica é um armazenamento orientado a colunas, projetado para lidar com grandes volumes de dados.

O Apache Hive é um data warehouse desenvolvido com base no Apache Hadoop para fornecer consulta e análise de dados.

O Snowflake é um data warehouse baseado em nuvem. Na versão 2019.1, o DataGrip oferece suporte apenas ao dialeto SQL. O suporte à introspecção vem mais tarde.

Caixa de diálogo de conexão

Geral

Reorganizamos os campos aqui para facilitar o processo de conexão.

O campo Connection type costumava ser URL type. Ele determina toda a interface do usuário dessa caixa de diálogo, e é por isso que agora está no topo, juntamente com o seletor de drivers.

O campo Database segue as credenciais, pois algumas vezes elas são necessárias para fornecer a lista de bancos de dados. A lista deve ser chamada com Ctrl+Espaço

O processo de salvar senhas agora é implementado por meio de um menu suspenso. Ele tem quatro opções: Never, Until restart, For session e Forever. For Session é provavelmente a única opção que requer alguma explicação: ela salvará sua senha até que você se desconecte da fonte de dados.

Além disso, a senha vazia agora pode ser definida através da interface do usuário. Use o menu de contexto para fazer isso.

Os resultados da conexão de teste agora estão alinhados e podem ser copiados para a área de transferência por meio de um pequeno botão dedicado. O link para a página de solução de problemas também foi adicionado.

A partir da versão 2019.1, o botão Test Connection não será desabilitado se não houver drivers baixados. Quando você clicar em Test Connection, o DataGrip oferecerá o download de drivers JDBC .

Opções

Movemos as configurações Read-only, Auto-Sync e Transaction control da guia General para cá.

Configurações recém-introduzidas:
- Run keep-alive query each N seconds será útil para manter a conexão ativa. Você pode definir a consulta personalizada nas configurações do driver para bancos de dados sem suporte.
Auto-disconnect after N seconds. Dispensa explicações.
Startup script é uma consulta SQL que será executada toda vez que você estabelecer uma conexão. Lembre-se de que, se a opção Single connection mode estiver desmarcada, cada novo console criará uma nova conexão.

Configuração renomeada:
Warn if editing an outdated DDL é o novo nome para o que costumava ser Notify when the outdated object is opened.

Esquemas

O filtro de objetos foi transferido da guia Options para cá.

Lista de fontes de dados

Um pequeno aprimoramento: Fontes de dados DDL agora têm seu próprio grupo na lista de fontes de dados dentro da caixa de diálogo de conexão.

Pesquisa e navegação

Localizações recentes

Há também um novo pop-up Recent Locations, que lista os locais de código que você visitou/alterou recentemente. Ele os apresenta como trechos de código com um par de linhas antes e depois do local.

Esse pop-up foi inspirado em Recent Files, mas com a capacidade de pesquisar por locais de códigos visitados. Isso deve vir a calhar quando você se lembra do código, mas não sabe onde ele está localizado. Especialmente se você trabalha com vários consoles de consulta: eles geralmente têm nomes semelhantes!

Pressione Delete/Backspace para remover os locais do pop-up.

O atalho padrão deste pop-up é Ctrl+Shift+E.

Se você está acostumado a pressionar Ctrl+Shift+E para acessar Recently changed files, use o atalho Ctrl+E duas vezes em vez disso.

Localizar no caminho

O DataGrip pode pesquisar nos códigos-fonte dos objetos. Isso estava disponível apenas se você escolhesse o escopo All Places. Limpamos um pouco essa interface do usuário e removemos as guias Module e Project.

Um novo escopo, Attached Directories, está disponível. Use-o se quiser pesquisar arquivos na janela de ferramentas Files.

Pop-up Go-to

Todas as ações de navegação agora funcionam daqui.

For instance, if you’re searching for a table, see what you can open from right here:
Table’s DDL: Ctrl+B.
Table’s data: F4 (Enter does the same for tables).
Modify Table dialog: Ctrl+F6.
Locate in… popup: Alt+F1 (Use it to see the object in the database tree view).
Quick doc popup: Ctrl+Q.
SQL generator: Ctrl+Alt+G.

Existem muitas outras ações relacionadas aos objetos que você vê aqui!

Além disso, não se esqueça de Navigation settings em Database | General. Sinta-se à vontade para criar seu próprio fluxo, pois o DataGrip agora provavelmente abrange todos os casos de uso possíveis.

Insight de código

Itens combinados no preenchimento

Adicionamos algumas opções combinadas à lista de preenchimento para instruções CREATE e DROP. Por exemplo, quando você começar a digitar CRIAR, pode selecionar CREATE TABLE.

Mais uma vantagem é a capacidade de usar abreviações!

Novas inspeções

As inspeções Usages of GOTO statements e Named arguments should be used estão desativadas por padrão, pois apenas alguns desenvolvedores desejam que essas coisas sejam informadas.

A inspeção Usages of GOTO statements tem três opções:
- Report all GOTO statements;
- Report uses of GOTO statements to exit a loop;
- Report backward GOTO statements;

Named arguments should be used. Alguns desenvolvedores preferem isso porque torna o código mais legível.

O DataGrip também avisará se o cursor que você usa não estiver aberto dentro de um procedimento ou uma função.

Trabalhar com arquivos

Agora, existe uma opção Default Directory em Settings/Preferences | Appearance & Behavior | System Settings. Ela definirá onde seu novo projeto será criado por padrão.

A ação Save as… para o arquivo do console:
1. Oferece o diretório do projeto padrão.
2. Mantém a última pasta escolhida.

Uma nova ação, Detach directory, está disponível para pastas na janela de ferramentas Files. Use-a no menu de contexto ou atribua um atalho.

Você pode formatar arquivos no menu de contexto sem abri-los.

Exibição em árvore do banco de dados

Melhoramos a introspecção de banco de dados para o IBM DB2. Agora você verá os seguintes novos objetos na árvore do banco de dados: gatilho, método, módulo, tipo de dados, variável, condição, sequência, restrição de verificação, função e tabela temporária global.

A árvore agora salva o contexto automaticamente, para que você sempre veja o nome da fonte de dados na parte superior.

Também adicionamos ícones para alguns bancos de dados que ainda não são compatíveis. Antes, se você tivesse muitas fontes de dados de bancos de dados sem suporte, elas poderiam causar problemas na janela de ferramentas "Database". Esperamos que as coisas estejam um pouco melhores agora.

Você pode usar qualquer um dos novos ícones personalizados para todo o restante. Escolha o ícone na guia Options das configurações do driver.

Outros

Temas personalizáveis

Esta versão adiciona a possibilidade de personalizar totalmente a aparência do IDE, pois agora você poderá criar seu próprio tema do zero. Criamos alguns temas inéditos para você começar. Eles podem ser baixados como plug-ins.

Você pode literalmente mudar a cor de qualquer coisa. Crie seu próprio plug-in de tema usando o DevKit e modifique a aparência do IDE por meio de um arquivo JSON. Aqui estão alguns links que você pode achar úteis:

Tutorial detalhado sobre como criar seu próprio tema personalizado.

Postagem em blog sobre a criação de temas personalizados para a plataforma IntelliJ.

Tema ciano

Tema roxo escuro

Editor de dados

O filtro agora está um pouco melhor, pois oferece o uso de valores da área de transferência.

Suporte para definer

Adicionamos suporte ao atributo DEFINER no MySQL e no MariaDB.

Primeiro, você pode escolher se o SQL Generator deve adicionar um atributo DEFINERao código gerado.

Segundo, você pode ignorar os atributos DEFINER durante a migração.

Correções de bugs

  • Esquemas não escolhidos para introspeção não são usados agora na comparação. DBE-7604
  • O qualificador de esquema não é mais perdido ao criar a chave estrangeira. DBE-4993
  • A coluna referenciada da chave estrangeira não é mais omitida na caixa de diálogo Modify Table. DBE-7560
  • Correção de falsos positivos na detecção de código inacessível. DBE-7554
  • [MySQL] Finalmente resolvemos o problema com NULL em vez de uma data vazia para todos os conectores. DBE-69
  • [MariaDB] Corrigido erro durante a introspeção. DBE-7743
  • [SQL Server] Não há mais resultados COUNT () errados. Como o problema de driver ainda não está corrigido, fizemos mudanças do nosso lado. DBE-2114
  • [SQL Server] Às vezes as tabelas eram duplicadas. Isso não acontece mais. DBE-7297
  • [Oracle] O botão Enable DBMS_OUTPUT está de volta. DBE-4702
  • [Oracle] Corrigido o problema com segmentos temporários em. DBE-7443
  • [Oracle] O código-fonte dos pacotes e funções é inspecionado corretamente. DBE-6768