Что нового в DataGrip 2023.3

Визуализация данных

Since the release of DataGrip 2023.3, it's been possible to visualize data following our integration of the Lets-Plot library, with its basic no-code data visualization possibilities. Визуализация доступна во всех трех видах сеток:

  • главная вкладка — при открытии таблицы, представления или файла CSV, график отображается в режиме Split;
  • вкладка результатов — при просмотре результатов запроса в окне Services график может отображаться вместо сетки;
  • результаты в редакторе — график может отображаться вместо сетки.

Обратите внимание, что существует одна известная проблема: настройки визуализации не сохраняются, то есть при повторном открытии сетки график вернется к исходному состоянию. Подробнее о визуализации данных читайте в документации. Эта функция еще в разработке, и нам важно ваше мнение. Вы можете оставить отзыв в этой форме, либо создав запрос в баг-трекере, либо написав нам по адресу datagrip@jetbrains.com.

Новая функциональность импорта

Мы потратили немало сил на изменение функциональности импорта, но это того стоило:

  • It was the last chapter in the big transition to our generated Modify Object UI, which is described in detail here.
  • теперь можно выполнять импорт в несколько целевых объектов;
  • теперь можно редактировать сразу несколько объектов. Например, можно менять форматы или кодировку нескольких файлов или изменять схемы для нескольких целевых объектов.

Ниже — несколько важных функций.

Маппинг

Целевой объект по умолчанию называется маппинг. Здесь можно определить целевую таблицу и сопоставить с ее столбцами столбцы файла. Чтобы отредактировать саму таблицу, нажмите кнопку Edit.

Таблица появится в древовидном интерфейсе справа. Он полностью повторяет интерфейс Modify Object и позволяет различными способами изменять таблицу и содержащиеся в ней объекты.

Автоматическая генерация имен таблиц

При нажатии на эту кнопку имя таблицы будет автоматически сгенерировано на основе исходного файла. Это полезно, если вы переименовали таблицу, а затем хотите вернуться к имени по умолчанию.

Упрощение имени столбца

Это действие удобно использовать, когда исходные имена столбцов содержат пробелы.

Переключение на старый интерфейс

Мы понимаем, что интерфейс очень сильно изменился, и некоторым пользователям это может быть неудобно. Мы будем благодарны за любые отзывы: они помогут нам понять, как можно улучшить новый интерфейс, сделав его более удобным и понятным при любых сценариях использования.

Если вы по какой-то причине хотите вернуться к старому интерфейсу, можно воспользоваться соответствующей настройкой.

Она будет доступна до тех пор, пока мы не обработаем все отзывы о новом интерфейсе.

Работа с данными

Настраиваемые форматы чисел в редакторе данных

В новой версии значительно больше вариантов представления чисел в редакторе данных. Самое важное изменение — можно указать десятичный разделитель и разделитель тысяч. Кроме того, отметим возможность настройки представления бесконечности и NaN.

Представление чисел в виде временных отметок UNIX

In the UNIX timestamp format, timestamps are stored as numbers, expressing how many milliseconds have elapsed since January 1, 1970 (UTC). Новая версия DataGrip поддерживает этот формат.

SQL Server Поддержка таблиц импорта/экспорта через команду BCP

We've added support for the BCP tool, which lets you export and import tables in SQL Server.

Поддержка DynamoDB

Мы рады сообщить, что 419 человек, проголосовавшие за этот запрос, были услышаны. В IDE JetBrains появилась поддержка DynamoDB!

Вот что уже реализовано:

  • данные DynamoDB можно посмотреть с помощью инструмента просмотра DataGrip;
  • поддержка PartiQL для DynamoDB в редакторе кода;
  • возможность интроспекции таблиц с ключами и индексами.

Если вам нужна в приоритетном порядке поддержка еще каких-то возможностей, оставьте комментарий к этой задаче в YouTrack.

Интроспекция

Планировщик интроспекций

Теперь вы можете задать интервалы интроспекции для каждого источника данных.

Oracle Уровни интроспекции по умолчанию

Интроспекция схем Oracle с помощью DataGrip занимает много времени, потому что каталоги Oracle обычно работают очень медленно. Для решения этой проблемы были введены разные уровни интроспекции.

По умолчанию выбран самый высокий уровень. Это означало, что интроспекция выбранных схем начиналась только на третьем уровне, который работал медленно. Более того, некоторые пользователи вообще не знали, что уровень интроспекции можно настраивать.

В DataGrip 2023.3 удобство пользователей и производительность поставлены выше полной функциональности. Теперь по умолчанию установлен автоматический выбор уровня интроспекции — Auto Select.

Новый подход предполагает, что уровень интроспекции по умолчанию определяется для каждой схемы, исходя из ее типа и количества объектов. Мы предполагаем, что пользователи чаще всего работают с текущей схемой (той, к которой подключен сеанс Oracle), реже с другими схемами и очень редко — с системными схемами.

Инструмент интроспекции подсчитывает для каждой схемы количество объектов и выбирает уровень интроспекции, исходя из следующих пороговых значений (N = количество объектов).

Кроме того, мы добавили возможность интроспекции отдельных объектов для получения их метаданных. Это удобно, когда пользователь явно запрашивает метаданные объекта (обычно исходный код). Например, если дважды щелкнуть по представлению, когда установлен низкий уровень интроспекции, DataGrip в тот же момент запросит исходный код. Это похоже на то, как работают другие инструменты баз данных.

По умолчанию включен автоматически определенный уровень. Если вы хотите, чтобы DataGrip работал как раньше, в меню Data Source properties | Options | Introspection | Default level выберите Level 3. Подробнее о том, как работает эта функция — в этой статье.

SQL Server Поддержка новых объектов

Поддерживаются новые объекты в SQL Server:

  • функции разделов и схемы разделов;
  • разделы и свойства соответствующих таблиц и индексов;
  • таблицы реестров;
  • группы файлов.

Redshift Поддержка материализованных просмотров

Для материализованных просмотров в Redshift теперь обеспечивается интроспекция и отображение в специальном узле Database Explorer.

Выполнение запросов

Oracle Поддержка ссылочных курсоров в консоли запросов

В новой версии результат от ссылочных курсоров можно получить, если запустить запрос в консоли или файле SQL.

  • Если выполняемая функция возвращает результат, содержащий только один ссылочный курсор, DataGrip сразу же переходит к результату, на который этот курсор указывает.
  • В более сложных случаях, когда результат содержит несколько ссылочных курсоров или что-то кроме них, DataGrip выводит основной результат и дает возможность посмотреть результаты, на которые указывают другие ссылочные курсоры. Из ячейки со ссылочным курсором можно перейти к соответствующему набору результатов (Ввод/двойной щелчок) и наоборот (Ctrl+B).

Генерация кода

Включение/отключение объектов баз данных

Некоторые типы объектов можно включать и отключать. Теперь это можно сделать через интерфейс DataGrip: он позволяет сгенерировать и выполнить соответствующие фрагменты кода.

Объекты, для которых доступна эта функция:

  • MySQL события;
  • PostgreSQL правила, триггеры и триггеры событий;
  • MS SQL индексы, внешние ключи, ограничения проверок и триггеры;
  • Oracle ключи, уникальные ограничения, внешние ключи, ограничения проверок, триггеры, табличные пространства и учетные записи пользователей.

Прочее

SQLite Предупреждение при использовании пути WSL

К сожалению, работа с базами данных SQLite, расположенными в среде WSL, не поддерживается, потому что WSL не поддерживает механизм блокировки файлов SQLite. В таких случаях DataGrip выводит на экран предупреждение. Других способов решения этой проблемы в настоящее время не существует.

Please vote for the original WSL issue if this is critical for you.