Очень многие разработчики считают что лучший интерфейс для работы с базами данных — текстовый интерфейс консольного. Я лично еще не достиг подобного просветления, поэтому больше доверяю GUI-инструментам. Хорошо, если у СУБД как у Postgres есть своя, утилита для работы с БД, а что делать если нет? Или если надо работать с различными базами данных одновременно? Под Windows альтернативных клиентов к различным СУБД — море разливанное. С другими ОС (я в данный момент работаю в OS X) все не так радужно, хотя есть программы разной степени пригодности и удобства. Раньше я использовал Navicat, но недавно нашел еще одно интересное решение, о котором и хочу рассказать: Valentina Studio.
Сразу скажу — я общался с разработчиками, и мне очень импонирует их концепция, то что они делают и как, поэтому я решил просто написать обзор о хорошем инструменте, о котором мало кто знает, поскольку публичный релиз программы состоялся очень недавно. До этого она долгое время разрабатывалась для Valentina DB и только в феврале вышла версия с поддержкой известных популярных баз данных. При этом разработчики приняли достаточно разумное решение — базовая версия совершенно бесплатна, а деньги берут только за несколько мощных «особо профессиональных» функций без которых чаще всего можно обойтись.
Valentina Studio поддерживает MySQL, PostgreSQL, SQLite и собственную базу ValentinaDB (да, эти разработчики создают свою СУБД, весьма и весьма интересную, но это — разговор отдельный).
Первое, что радует — программа имеет «родной» интерфейс на каждой платформе (если не ошибаюсь — это заслуга wxWidgets, но в отдаленном будущем она будет портирована на Qt), не знаю кому как, но мне это импонирует. Плюс — родное приложение явно быстрее Java.
Интерфейс программы построен вокруг вкладок: их можно открывать сколько угодно для разных задач, и быстро переключаться между ними. По-умолчанию открывается закладка с интерфейсом подключения к существующим и созданию новых БД.
В общем, в «студии» есть все нужные инструменты, которые ожидаешь увидеть в программе. Создание новых таблиц, представлений, триггеров и других сущностей БД, их редактирование и удаление. Везде при этих операциях можно посмотреть, какие SQL запросы для этого используются, что удобно для изучающих SQL. Но есть и необычные моменты, например наличие нескольких разных способов просмотреть объекты БД. Помимо привычного по другим программам представления сущностей базы в виде дерева, есть еще и многоколоночный вид, напоминающий Finder OS X. При этом, можно выбрать несколько сущностей одновременно (например несколько полей таблицы) и посмотреть их общие свойства.
Разумеется, в наличии есть и редактор SQL запросов с подсветкой синтаксиса и автодополнением, и редактор данных в базе с фильтрами, сортировкой и прочими необходимыми вещами. В редакторе очень круто сделана поддержка подчиненных таблиц, если в базе настроены отношения.
Имеются и инструменты по работе с сервером БД: управление пользователями и базами данных на сервере, диагностика, переиндексация и дефрагментация.
Хорош встроенный в программу редактор диаграмм. В бесплатной версии он позволяет даже осуществлять реверс-инжениринг существующей базы, что отлично помогает понять что происходит в случае запутанной структуры БД (обычно такого в бесплатных программах нет). Правда обратная операция создания/обновления базы по диаграмме есть уже только в полной версии.
Так же полная версия добавляет полноценный визуальный редактор отчетов, функции синхронизации баз данных с SQL DIFF и поддержку ODBC. Кстати, отчеты от Valentina — предмет, отдельного разговора, как и их база данных, поскольку возможности их очень богаты. Фактически, это кросс-платформенный: Win, Linux и OS X движок отчетов (кстати, тоже редкость на самом деле) с визуальным редактором и возможностью использовать его как встроенный компонент.
Чем хороши бесплатные программы, так это тем что ее всегда можно полноценно попробовать, чтоб понимать, насколько она подходит именно вам. Мне вот очень подошла :). Скачать программу можно с сайта разработчиков, пользователи OS X могут воспользоваться Mac App Store (кстати, в US программа занимает 8 место в топе бесплатных программ раздела разработка)
Есть еще «десятиминутное видео введение», в котором некоторые возможности показываются подробней.
P.S. Радует что проект динамично развивается, несколько замеченных мною недочетов были приняты в работу и исправлены буквально в считанные дни.
P.P.S Разработчики просили при регистрации указывать регистрационные данные на английском.
Автор: cleg