Привет! Посмотрим на новые штуки в — DataGrip 2019.1. Напомним, что функциональность DataGrip включена и в другие наши платные IDE, кроме WebStorm.
Поддержка новых баз
В этом релизе сразу четыре базы получили официальную поддержку в наших инструментах:
Apache Hive – система управления базами данных на основе платформы Hadoop.
Greenplum – аналитическая СУБД для хранилищ данных на основе PostgreSQL.
Vertica – колоночная база для анализа больших данных.
Snowflake – облачное хранилище данных. Если говорить о реляционных базах, то Snowflake просили больше всего. В этом релизе мы поддержали только SQL, инстропекцию выпустим попозже.
Соединение
Мы сделали изменения в диалоговом окне соединения с базой: постарались сделать более понятно и удобно.
General
В этой вкладке, в основном, произошёл рефакторинг.
Поле Connection type раньше называлось URL type и было в самом низу. Но, так как значение в этом поле определяет дальнейший процесс, теперь оно наверху.
Поле Database расположили после ввода логина и пароля, потому что аутентификация нужна для того, чтобы отобразить список баз по Ctrl/Cmd+Пробел.
В комментариях к прошлому посту много обсуждали сохранение пароля. Добавили новых опций и сделали выпадающий список. Значения этого списка:
– Не сохранять пароль.
– Сохранять до перезапуска DataGrip (раньше так работала опция “не сохранять”).
– Сохранять на сессию: пока вы не отсоединитесь от источника данных.
– Сохранять навсегда.
Чтобы избежать непонятностей, пустой пароль вводите через контекстное меню.
Результаты Test Connection теперь показываются в самом окне, никаких лишних кликов и диалогов.
А если драйвера не скачаны, DataGrip предложит это сделать. Раньше кнопка Test Connection была в таком случае заблокирована, что путало пользователей.
Options
Сюда из вкладки General переехали настройки Read-only, Auto-sync, Transaction control.
Новое:
– Run keep-alive query each N seconds: будет тыкать палочкой источник данных каждые N секунд. Для баз, которые мы не поддерживаем, вы можете сами написать keep-alive-запрос. Это делается в настройках драйвера.
– Auto-disconnect after N seconds: введенное здесь значение в секундах укажет DataGrip, через какое время автоматически отсоединяться от источника данных.
– Startup script: Сюда можно вписать запрос, который будет выполняться при каждом создании подключения. Напомним, что если Single connection
mode не включен, для каждой новой консоли создаётся новое подключение.
Schemas
Сюда переехал фильтр отображаемых в дереве объектов.
Навигация и поиск
Список последних местонахождений
Новое окно Recent locations показывает, где вы недавно были. Элементы списка — это небольшие куски кода, которые вы недавно редактировали или смотрели. Это полезно, если вы помните контекст, но не помните название файла. В DataGrip такое часто происходит, потому что все консоли названы похожим образом :) Сочетание клавиш по умолчанию:
Ctrl/Cmd+Shift+E.
Если раньше вы использовали это сочетание клавиш для отображения списка недавно изменённых файлов, то теперь, пожалуйста, пользуйтесь двойным нажатием Ctrl/Cmd+E.
Поиск по пути
Мы убрали ненужные опции, которые “достались” нам от платформы: Module и Project. Теперь по умолчанию Find in path в DataGrip ищет везде. Ещё добавили новую область поиска Attached Directories — она включает в себя только файлы и папки из панели Files.
Действия из результатов навигации
Теперь из результатов навигации работают действия, которые применимы к объектам в коде или дереве. Например, вы ищете таблицу. Вот что можно сделать из окна с результатами.
– Посмотреть DDL: Ctrl/Cmd+B.
– Открыть данные: F4.
– Открыть окно Modify Table: Ctrl/Cmd+F6.
– Отобразить в другом контексте: Alt+F1 (например, показать в дереве).
– Увидеть общую информацию: Ctrl+Q/F1.
– Сгенерировать SQL: Ctrl/Cmd+Alt+G.
Работа с кодом
Комбинированные элементы в автодополнении
Для CREATE
и DROP
автодополнение предлагает комбинированные варианты.
Не забывайте об аббериватурах.
Новые инспекции
DataGrip предупредит, если вы используете курсор, который не открыли.
Следующие две инспекции выключены по умолчанию, но некоторым могут понадобится.
Если используете неименованные аргументы, это будет подсвечено.
Инспекция, которая ругается на оператор GOTO.
Работа с файлами
Добавили настройку для папки проекта по умолчанию. Новые проекты будут создаваться в этой папке.
Действие Save as… для консоли теперь:
– Предлагает проектную папку по умолчанию.
– Запоминает последний выбор.
В дереве файлов добавили действие Detach Directory: открепить папку. Раньше, чтобы открепить папку (то есть не показывать её в этом дереве), надо было нажать Delete, и DataGrip спрашивал: вы хотите удалить или открепить? Это было неудобно и непонятно :)
Дерево базы данных
Мы написали свою интроспекцию для DB2. Это означает, что информацию об объектах базы мы получаем при помощи запросов, а не через JDBC-драйвер, как раньше. В дереве, таким образом, появились объекты, которых раньше не было: триггеры, типы, методы, модули, счётчики, роли и другие.
Дерево хранит контекст: имя источника данных залипает сверху.
Для не поддерживаемых баз нарисовали иконки: те, у кого источники данных созданы для таких баз, перестанут путаться.
Ещё нарисовали абстрактных иконок, их можно использовать в настройках драйвера.
Остальное
Кастомные темы
Пользователи DataGrip получили возможность делать любые цветовые схемы. Новая схема — это плагин, который надо поставить из раздела Plugins в настройках.
О том, как делать свои темы, читайте тут:
Detailed tutorial about how to create your own custom Theme.
Blog post about creating custom themes for IntelliJ Platform
Мы попробовали сделать пару новых сами. Выглядят они так:
Cyan
Dark purple
Редактор данных
Фильтр предлагает значения из буфера обмена.
Всё!
– Более подробно тут (на англ.)
– Скачать триал на месяц
– Твитер, который мы читаем
– Почта, которую мы читаем: datagrip@jetbrains.com
– Баг-трекер
– Комментарии, которые мы читаем ↓↓↓
Команда DataGrip
Автор: Максим Соболевский