Импорт и экспорт параметров

Импорт CSV-файлов

Импорт данных из файла

Для импорта CSV-файлов есть графический интерфейс. В контекстном меню схемы, в которую вы хотите импортировать, выберите пункт Import From File… Затем выберите сам CSV-файл.

Откроется диалоговое окно импорта. В левой панели опишите формат: укажите разделитель, префиксы, уточните наличие и формат заголовков.

В правой части окна опишите таблицу, в которую запишутся данные. Нажмите Delete на столбце, если не хотите его импортировать. Если вы хотите импортировать данные в существующую таблицу, кликните на Import From File…, используя контекстное меню этой таблицы.

В файле данных могут быть ошибки. По умолчанию включен флажок Write error records to file (Записывать ошибки в файл). Процесс импорта не прервется, но создастся журнал с информацией о строках, которые записать не удалось.

Вставка CSV в редактор данных

Вставляйте данные из экселевских таблиц. В общем случае это означает вставку в CSV формате. В DataGrip можно настроить формат, в котором будут записаны данные в буфере обмена. Но IDE может определить его и автоматически: нажмите на шестеренку и выберите значение Paste format.

Редактор CSV

DataGrip умеет редактировать CSV-файлы как таблицы. Для этого выберите Edit As Table из контекстного меню.

Затем укажите разделитель, уточните формат заголовка и т.д. Есть предпросмотр.

Экспорт данных

Что и куда

Таблица

Таблицу можно экспортировать в:
Файл. Контекстное меню таблицы → Dump data to file.
Другую таблицу. Контекстное меню таблицы Copy Table to (или нажать F5 на таблице) → Выбрать существующую таблицу.
Новую таблицу в любой СУБД. Контекстное меню таблицы Copy Table to (или нажать F5 на таблице) → Выбрать схему или базу данных. Или просто перетащите таблицу мышкой туда, куда хотите экспортировать! На видео показано, как скопировать таблицу из PostgreSQL в SQLite.

SQL-запрос

Запрос может быть экспортирован в файл, то есть результаты сразу запишутся на диск. Для этого вызовите контекстное меню на запросе, выберите Execute to file. Затем укажите формат экспорта. Это особенно полезно, если запрос медленный: для экспорта не нужно запускать его два раза.

Результат запроса

Результат можно экспортировать в:
Файл. Кнопка экспорта To File.
Буфер обмена. Кнопка экспорта To Clipboard.
Существующую таблицу. Кнопка копирования → Выберите таблицу.
Новую таблицу в любой СУБД. Кнопка копирования → Выберите схему или базу.

Выделенную область данных

Выделенную область данных можно скопировать в буфер обмена: Ctrl+C или через контекстное меню Copy.

Форматы экспорта

Всякий раз, когда вы экспортируете в файл или буфер обмена, используется определенный формат экспорта. Часто это CSV, но можно использовать и другие, например: JSON, XML, HTML и Markdown. Выберите соответствующий формат в выпадающем списке на панели инструментов или создайте свой собственный.

SQL-запросы

Любую таблицу или результат можно экспортировать в виде INSERT запросов. Для этого выберите формат SQL Inserts в выпадающем списке. В некоторых случаях это самый быстрый способ перенести данные из одной таблицы в другую. Генератор кода умеет учитывать столбцы с автоинкрементом.

Также данные можно представить в виде набора UPDATE запросов.

CSV, TSV

В списке есть два формата с разделителем: CSV (разделитель — запятая) и TSV (разделитель — знак табуляции). Вы можете создать свой формат с любым разделителем. Например, это может быть разметка Confluence Wiki.

HTML и XML

Один из форматов по умолчанию нельзя изменить: HTML table. Другие форматы описаны скриптами: HTML-Groovy.html.groovy, XML-Groovy.xml.groovy и т.д. Эти скрипты называются «экстракторами». Эти скрипты можно модифицировать.

JSON

Экстрактор JSON-Groovy.json.groovy экспортирует данные в формате JSON.

Создание собственных форматов

Для нетривиальных случаев можно писать свои экстракторы. CSV-Groovy.csv.groovy, HTML-Groove.html.groovy — это экстракторы, встроенные в DataGrip по умолчанию. В выпадающем списке выбора форматов/экстракторов выберите Go to scripts directory, чтобы открыть папку, в которой лежат экстракторы.

Экстракторы, то есть скрипты, можно писать на Groovy или JavaScript. Они расположены в Scratches and Consoles/Extensions/Database Tools and SQL/data/extractors. Изменяйте существующие экстракторы или добавляйте свои собственные.

Чтобы узнать больше о написании экстракторов, прочитайте эту статью.

Инструменты для бэкапа

DataGrip поддерживает работу с mysqldump и pg_dump. Чтобы создать копию базы, используйте пункт Dump with… из контекстного меню источника данных. Инструменты восстановления для MySQL и PostgreSQL тоже вызывайте из контекстного меню. Для PostgreSQL можно восстанавливать двумя утилитами: pg_dump или psql. Выберите нужную в диалоговом окне.