Оглавление
Введение
Приложения, использующие базы данных, сейчас составляют, наверное, подавляющее большинство коммерческих продуктов и заказных разработок, и вопросы, связанные с самими базами данных и с созданием использующих их приложений, освещаются в нашем издании достаточно регулярно вот уже более десятка лет - мы неоднократно писали и о средствах проектирования данных, и о технологиях доступа к данным, и о самих СУБД, и о средствах разработки приложений, которые обращаются к данным, и о генераторах отчетов и средствах анализа данных.
Сегодня мне хотелось бы рассмотреть еще одну категорию инструментов, считающихся вспомогательными, но при этом широко применяющихся при разработке приложений с базами данных, - утилиты, предназначенные для так называемой post-case-обработки баз данных, то есть для разнообразных манипуляций с базой данных, которые выполняются после ее проектирования в процессе разработки приложений. К таким манипуляциям могут относиться создание части серверного кода, реализующей нестандартную функциональность, внесение несложных изменений в структуру данных с целью исправления незначительных ошибок проектирования, заполнение данными части таблиц (например, справочников), генерация окончательной версии скрипта для поставки его конечным пользователям и ряд других операций.
Сейчас трудно найти СУБД, в комплект поставки которой не входят утилиты для администрирования баз данных и простейших манипуляций, таких как создание таблиц, ввод данных, создание серверного кода. Как минимум, приложение, позволяющее создавать пустую базу данных, вводить и выполнять SQL-запросы, имеется в составе почти любой серверной СУБД, а в большинстве случаев можно найти утилиты, предоставляющие более удобный интерфейс для манипуляции метаданными и данными, нежели ввод SQL-запросов. Правда, в ряде случаев административные утилиты могут включаться в наиболее дорогие версии серверных СУБД и не входить в состав стандартных или персональных версий. Вот тут-то и пригодятся продукты независимых производителей, способные заменить административные утилиты и во многих случаях оказывающиеся гораздо более удобными для разработчиков приложений.
Первая статья данного цикла будет посвящена инструментам, предназначенным для разработчиков решений на основе СУБД Oracle. В последующих статьях мы обсудим утилиты, полезные авторам приложений, использующих другие серверные СУБД.
Инструменты для авторов решений на основе Oracle
Корпорацией Oracle создано довольно удобное многофункциональное приложение Oracle Enterprise Manager, позволяющее осуществлять вышеперечисленные действия с базами данных, управляемыми тремя последними версиями этой СУБД. Однако это приложение входит в комплект наиболее дорогих редакций этой СУБД - Oracle 8i Enterprise Edition, Oracle 9i Enterprise Edition, Oracle 10g Enterprise Edition. Пользователям же остальных редакций, равно как и разработчикам приложений на их основе, предлагается главным образом набор утилит, позволяющих осуществлять манипуляции с базой данных из командной строки, либо простейший редактор SQL-запросов SQL Plus. Но утилит, реализующих некоторые функции Enterprise Manager, равно как и ряд других функций, существует немало. Ниже мы рассмотрим некоторые из них.
SQL Navigator (Quest Software)
SQL Navigator for Oracle 4.5 - весьма удобный инструмент для визуального редактирования данных и метаданных, генерации скриптов (в том числе и скриптов для заполнения таблиц данными). Этот инструмент содержит средства синтаксического выделения кода SQL и PL/SQL, инициирования компиляции кода, редактирования данных, экспорта результатов запросов в различные форматы, поддерживает многие особенности Oracle 10g (новые ключевые слова, типы данных, отображение хранения базы данных на нескольких дисках).
SQL Navigator (Quest Software)
Данный продукт позволяет значительно повысить продуктивность создания и тестирования кода PL/SQL, осуществлять поиск объектов в базе данных, выполнять запросы в отдельном потоке. Отметим, что этот продукт очень популярен среди разработчиков.
TOAD (Quest Software)
Утилита TOAD (Tool for Oracle Application Developers) предназначена для разработчиков и администраторов баз данных. Она предоставляет удобную среду создания кода Oracle, использующую профилировщик и отладчик кода самой компании Oracle, позволяет осуществлять мониторинг базы данных, управлять файлами, в том числе и с помощью протокола FTP, уведомлять администратора базы данных о возникших проблемах, осуществлять поиск нужного объекта в базе данных.
TOAD (Quest Software)
TOAD содержит три основных компонента: Database Browser, SQL Editor и PL/SQL Procedure Editor, а также панель SQL Modeller, позволяющую отобразить структуру базы данных в графическом виде. Для администраторов TOAD предоставляет удобный графический пользовательский интерфейс ко многим утилитам командной строки самой Oracle.
Hora (Keep Tool)
Hora (Handy Oracle Tool) представляет собой интегрированную среду для разработчиков и администраторов и позволяет осуществлять все наиболее часто встречающиеся операции. Данный продукт поддерживает отладку кода SQL и PL/SQL, генерацию отчетов, импорт и экспорт данных. Этот инструмент содержит графический построитель запросов, средства просмотра данных, словарей БД, импорта результатов запросов в различные форматы (Excel, PDF, XML).
Hora (Keep Tool)
В качестве дополнения к этому инструменту предусмотрено несколько вызываемых из него утилит того же производителя для генерации диаграмм баз данных (ER Diagrammer), документации в формате HTML (HTML Documentation Generator), инструменты для обратного проектирования баз данных и редактирования скриптов, средства отладки кода PL/SQL (PL/SQL Debugger).
PL/SQL Debugger (Keep Tool)
PL/SQL Developer (Allround Automation)
PL/SQL Developer, отличающийся относительно невысокой ценой, представляет собой среду разработки для авторов кода PL/SQL. В отличие от рассмотренных выше продуктов, он не содержит большого количества инструментов администрирования. PL/SQL Developer предназначен главным образом для разработчиков, и в этом плане данный инструмент оказывается весьма привлекательным - в его составе есть средства автоматического завершения кода, инструменты для создания шаблонов кода, графический интерфейс к отладчику и профилировщику Oracle, инструмент для графического построения запросов. В этот продукт удачно интегрирована документация Oracle.
PL/SQL Developer (Allround Automation)
OraPowerTools (DKG Advanced Solutions)
OraPowerTools компании DKG Advanced Solutions представляет собой набор утилит для разработчиков решений на основе Oracle и администраторов этой СУБД. Этот набор содержит утилиты OraEdit PRO - среду разработки баз данных и кода PL/SQL, DBDiff for Oracle - утилиту сравнения двух баз данных (в том числе управляемых разными версиями сервера) и создания обновлений на основе найденных различий и утилиту DBScripter for Oracle, позволяющую создавать скрипты для генерации баз данных и заполнения их данными. Все эти утилиты доступны и по отдельности.
DBDiff for Oracle (DKG Advanced Solutions)
OraEdit PRO (DKG Advanced Solutions)
Помимо указанных утилит, разработчикам доступна и бесплатная утилита OraEdit того же производителя.
Заключение
В настоящем мини-обзоре мы рассмотрели несколько утилит, предназначенных для разработчиков решений на основе Oracle. Отметим, что список доступных утилит не ограничивается вошедшими в обзор - помимо них существует еще несколько интересных инструментов, таких как Unicenter Database Management (Computer Associates), SQL Programmer for Oracle (BMC Software), Expediter/SQL (Compuware), RapidSQL (Embarcadero), а также инструменты для Linux, такие как Procedit (OraSoft) и KORA (Ullrich Wagner).
О корпорации Oracle
Корпорация Oracle является крупнейшим в мире поставщиком программного обеспечения для управления информацией и второй в мире компанией по поставке программного обеспечения. Имея годовой объем продаж более 9.7 миллиардов долларов США, компания предлагает свои базы данных, серверы приложений, инструментальные средства разработки и готовые приложения, а также услуги в области консалтинга, обучения и поддержки систем более чем в 145 странах во всем мире. СУБД Oracle используют более чем в 750 организациях на территории СНГ и более чем в 520 организациях на территории России.
Ссылки по теме