Доступна 0xDBE 1.0 Preview
JetBrains приближается к релизу новой IDE для работы с SQL и базами данных. Мы запустили EAP программу год назад и благодарим всех её участников. Как всегда, ваши мнения и пожелания сделали наш продукт лучше.
Мы рады представить вам 0xDBE 1.0 Preview. Это отличный шанс попробовать нашу новую IDE и поделиться впечатлениями, что поможет нам сделать 0xDBE ещё лучше к моменту релиза.
Нам нравится название 0xDBE, но оно всё же рабочее, и к релизу мы выберем другое — более читаемое.
Ещё мы хотим лучше узнать наших пользователей и понять, как вы работаете с базами данных, поэтому составили небольшой опрос. Просим пройти его, на это уйдёт 5-8 минут. Среди тех, кто принял в нём участие, мы разыграем десять годовых лицензий на 0xDBE.
Итак, вот что мы добавили с момента запуска EAP:
Быстрая и точная интроспекция
В первую очередь, мы переработали алгоритм получения мета-информации о базе данных и расширили стандартную JDBC-интроспекцию для большинства поддерживаемых СУБД. Помимо увеличения скорости это привело к улучшениям в графическом интерфейсе — теперь объекты базы данных сгруппированы по типам:
Управление объектами БД
При нажатии Ctrl+F6 (Cmd-F6 для OS X) на имени таблицы в текстовом редакторе или в окне Database view открывается окно Modify Table, в котором можно добавлять и удалять столбцы, менять их свойства, добавлять и удалять ключи и индексы. В реальном времени генерируется DDL-скрипт, который будет выполнен для этих изменений:
Текстоый поиск
Теперь доступен текстовый поиск по результату запроса. Например, вам нужно найти данные, а столбец забыли. Есть поддержка регулярных выражений:
Кодогенерация запросов
По нажатию Alt+Ins (Cmd-N для OS X) в текстовом редакторе доступна генерация DDL-запросов. В появившемся окне вы можете создавать таблицы, функции и процедуры на основе графического интерфейса. Если курсор находится внутри существующего DDL-запроса, IDE предлагает изменить столбец, добавить ключ или индекс.
Получившийся код вставится в текстовый редактор или сразу выполнится в базе данных:
Когда вы собираетесь вставить данные, используя несколько идущих подряд предложений INSERT, эти данные можно редактировать в виде таблицы ещё до вставки. Если вы добавите строчку в эту виртуальную таблицу, ещё одно предложение INSERT сгенерируется в редакторе.
Консоли запросов
Мы вынесли открытие новой консоли в отдельный пункт меню. Перемещайтесь между несколькими консолями в окне Files, через меню Recent Files, в Navigation toolbar или по Ctrl+Tab. У каждой консоли есть переключатель контекста — меняйте схему для выполнения скрипта, не создавая новую консоль:
История изменений
IDE локально хранит историю измнения каждого файла. В смежных окнах можно сравнить версии и откатиться к любой из них:
Исполнение запросов
Выполнение выделенного блока кода теперь работает не только в консолях, но и в файлах. Также вы можете выбрать, как IDE должна поступить в этом случае: выполнять выделенный блок как один запрос, выполнять блок как несколько запросов, или попытаться самой определить, что делать, и выполнить валидный скрипт, даже если вы выделелили нерабочий кусок кода:
Ещё мы добавили опций для запуска запроса из консоли. Если курсор стоит внутри сложного выражения, IDE может выполнятьтолько подзапрос, выполнять весь запрос, или спрашивать, какой из доступных запросов выполнить:
Если курсор стоит вне SQL-кода, то также есть три опции: IDE может выполнить все запросы в файле, выполнить только запросы ниже курсора или не делать ничего.
Выполнение запросов из Structure view
По нажатию Ctrl+Enter (Cmd-Enter для OS X) запрос выполняется прямо из окна Structure view. Это удобно, если вам нужно быстро выполнить только некоторые запросы из файла:
План выполнения
Для запросов доступен план выполнения:
Сравнение результатов запросов
Результаты выполнения двух запросов возможно сравнить в смежных окнах. IDE подсвечивает разницу и позволяет изменять строгость критерия оценки равенства строк. То есть, если вы хотите считать равными строки, которые отличаются данными только в одном (или более, на выбор) столбце, это указывается в значении параметра Tolerance. Любой столбец также может быть исключён из процесса сравнения:
Поддержка формата CSV
Для редактирования CSV-файлов или других табличных данных в тексте выберите пункт Edit as Table из контекстного меню. Откроется окно настроек, в котором вы можете указать разделитель, определить, есть ли в файле заголовки, в каких случаях брать значения в кавычки и т. д. Данные из файла сразу отобразятся в виде превью таблицы:
Настройки запросов с параметрами
Мы обновили окно настроек параметризированных запросов, которое находится в
Settings → Database → User Parameters. Теперь подсвечиваются регулярные выражения, а также есть возможность выбирать диалект, в котором будут использоваться шаблоны:
Диаграммы
Вы можете смотреть диаграммы с наглядным отображением зависимостей между объектами:
Улучшенная навигация по объектам БД
Для того чтобы перейти к любому объекту базы, нажмите Ctrl+N (Cmd-O для OS X) и введите его имя в текстовое поле. Если это таблица, вы увидите табличный редактор, а если функция или процедура, откроется редактор с DDL-скриптом для её изменения:
Плагины по умолчанию из Intellij IDEA теперь могут быть установлены в 0xDBE. Это Terminal, Git, Subversion и другие.
В дополнение ко всему, мы улучшили поддержку HiDPI для Windows и Linux, добавили Distraction Free mode — режим, в котором вы видите только текстовый редактор, а также сделали много других небольших улучшений.
Мы планируем релиз нашей IDE для SQL-разработчиков на середину ноября. Она будет доступна в рамках JetBrains Toolbox, как «Single IDE», а также как часть пакета «All Products».
Будем рады ответить на любые вопросы!