Реліз DataGrip 2016.3

Привіт! Цей пост про те, що нового в DataGrip 2016.3. Нагадаю, що описане справедливо і для інших IDE на платформі IntelliJ з підтримкою баз даних: PHPStorm, PyCharm, RubyMine і, звичайно, IntelliJ IDEA. Крім однієї маленької можливості, про що зазначу окремо.

Цей релізний цикл був дуже важливим, вдалося багато чого з того, що нас довго просили зробити: підтримка тригерів, пошук використань всередині уявлень і функцій, відкладене редагування таблиць. Дякуємо тих, хто не соромиться тестувати наші інструменти і пробує нові версії задовго до релізу.

Отже, DataGrip 2016.3!



Сховище вихідних
Використання таблиці або подання шукаються не тільки у вихідному коді, але і всередині інших об'єктів бази даних: функції, процедури та інших уявленнях.

Це працює так: DataGrip вивантажує исходники об'єктів у сховище, куди і звертається при потребі. За промовчанням коди з усіх схем, крім системних. Налаштувати це можна у властивостях джерела даних, вкладка Options.

Для включення сховища запустіть Forget Schemas з контекстного меню, а потім оновіть джерело даних — натисніть на Synchronize на панелі інструментів.


Пробуємо: як завжди, Alt+F7 знайде використання поточного об'єкта в скриптах. А тепер і всередині інших об'єктів. Праворуч видно, в якому місці коду знайшлося входження.


Як я вже написав, ми завантажуємо исходники тригерів для популярних СУБД: MySQL, PostgreSQL, SQL Server, Oracle Sybase. А для PostgreSQL ще й исходники правил. Тепер можна видалити тригер з контекстного меню.


Полагодили баги з вихідними кодами уявлень — тепер вони показуються вірно у всіх місцях. Для кожного об'єкта, джерело якого ми записали в сховище, доступно Open DDL In Console у контекстному меню.


Не забули і про матеріалізованих представлень в PostgreSQL. Завантажте вихідні коди, оновлювати дані в них з контекстного меню.


Коли ви редагуєте вихідні коди об'єктів з сховища, DataGrip відстежує зміни і підсвічує їх на льоту у бічній панелі.

Важливо розуміти, що редактор процедур, функцій і уявлень показує локальну версію вихідного коду, яка зберігається у вас завжди, навіть якщо ви перезавантажте IDE. Простіше кажучи, якщо ви напишіть і виконайте тут запити, не відносяться до об'єкту, вони все одно збережуться і будуть відображатися кожного разу, коли ви редагуєте об'єкт. Так що краще нічого зайвого тут не запускати :)


А якщо таких змін багато, і вони все ще не відправлені в базу, то їх список шукайте в Tools → DataBase changes. Увага! Цього вікна в інших наших IDE немає, тільки в DataGrip.


Інструмент порівняння допоможе дізнатися, що змінилося для кожного з об'єктів.


Коментарі при створенні процедур зберігаються в базі.


Редактор даних
Редактор даних поступово перетворюється в потужний інструмент: вміє те, чого зазвичай від нього в IDE для баз даних не чекають.

Головне нововведення в цій версії — відкладене редагування: ваші зміни зберігаються локально і підсвічуються, поки ви не відправите їх у базу Ctrl+Enter (Cmd+Enter для OSX). Поки зміни не відправлені, їх можна відкотити: Ctrl+Z (Cmd+Z для OSX) скасує тільки ті зміни, які виділені. Відповідно, перш, ніж скасувати усі, натисніть Ctrl+A (Cmd+A для OSX) .


Редагуйте кілька осередків одночасно. Звичайно, це працює, якщо вони всі одного типу і не мають обмежень по унікальності.


Крім того, ми додали конвертацію — тепер дані можна копіювати з комірок одного типу в інший. А з урахуванням попереднього, копіювати колонками: дати в рядки, логічні значення числа і так далі. Це спрацює, навіть якщо вихідна таблиця і таблиця призначення знаходяться в базах від різних СУБД.


І невеликі зміни: в редакторі даних, тепер, як і в тексті, працює Виділити наступне появу Alt+J (Ctrl+G для OSX). Можна виділяти декілька полів відразу.


Ще одна знайома річ з текстового редактору — так зване «розумне» виділення Ctrl+W (Alt+Up для OSX) — в редакторі даних працює так: спочатку виділяється активна колонка, потім активна рядок, потім все. Як завжди, із затиснутим Shift все відбувається в зворотному порядку.


Підтримка SQL-коду
Автодоповнення пропозиції INSERT пропонує у тому числі варіант тільки з полями, у яких немає значення за замовчуванням.


Якщо параметр або змінна не використовуються, вам повідомлять.


Також вас попередять, якщо кількість колонок при поєднанні результатів запитів не збігається.


Автодоповнення для JOIN USING, засноване на пошуку колонок з однаковими іменами, тепер працює для PostgreSQL.


Пошук параметрів Alt+F7 PostgreSQL розуміє посилання типу $n.


Навігація по методам, знайома з іншим нашим IDE, у нас стала навігацією по запитам. Сполучення клавіш: Alt+UpAlt+Down (Ctrl+Down і Ctrl+Up для OSX).


Інтеграція з mysqldump і pg_dump

Для параметрів працює додаток з Ctrl+Space.


Різне
Ще коли DataGrip називався 0xDBE у нас був XML екстрактор даних — будь-який набір даних експортувався в XML. Ми його прибрали, але багато просили повернути назад: повернули.


Виходить ось що:


Прискорили запуск великих скриптів з контекстного меню — тепер ми надсилаємо запити до бази не по одному, а пакетами.


Ну і наостанок. Багато хто, напевно, помітили: у нас нові іконки!


А також:

  • Підтримка граматикSQL Server 2016 PostgreSQL 9.6
  • Автоматичне визначення, застарілий драйвер
  • Додали Drop в контекстне меню багатьох об'єктів
  • Шрифт FiraCode з лігатурами йде з коробки
  • Підтримка Auto-inc для таблиць SQLite
  • Підтримка Expression index SQLite
Якщо сподобалося, а ви ще не пробували DataGrip, скачайте безкоштовну пробну версію пишіть нам тут, в коментарях, що ви думаєте. Ще ми ведемо і читаємо twitter, а про помилки краще відразу повідомляти трекер.

Часто виявляється, що про деяких можливостях DataGrip люди просто не знають, так що не зайвим буде і відвідати наш сайт, де описано, що вміє DataGrip.

Спасибі!
Команда DataGrip
_
JetBrains
The Drive to Develop
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.