Как работать в oracle sql developer

Обновлено: 07.07.2024

Эта статья и её продолжение появились благодаря вопросам студентов на семинарах по СУБД. Каждый студент должен был выбрать тему для проектирования базы данных, реализовать полный цикл проектирования от логической и физической диаграммы в Oracle SQL Developer Data Modeler ( SDDM ) до работающей базы данных в СУБД Oracle с использованием APEX. Затем стать пользователем своей разработки: заполнить схему данными и написать аналитические запросы. Некоторые возможности SDDM оказались неочевидными и мы потратили полтора занятия, что бы рассмотреть самое необходимое.

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

Не надо сразу делать таблицы. Порядок разработки следующий:

  • анализ данных, процессов обработки информации и бизнес-правил, документирование собранной информации
  • выявление и определение сущностей
  • выявление, описание атрибутов сущностей, определение типов атрибутов
  • выявление, описание и определение типов связей между сущностями
  • создание матрицы связей и проверка идеи на прочность анализом матрицы связей, документирование бизнес-правил и ограничений
  • создание логической диаграммы сущность-связь (ERD) в SDDM, в свойствах атрибутов и связей в том числе отражаются бизнес-правила и ограничения, те что не могут быть реализованы в СУБД описываются отдельным документом и реализуются на прикладном уровне триггерами

Статью готовил я, Присада Сергей Анатольевич, сейчас работаю в Финансовом университете при Правительстве РФ, почта sergey.prisada на яндексе.

Рассмотрим на некоторых абстрактных отношениях следующие возможности:

  • Домены атрибутов.
  • Глоссарий имен.
  • Суррогатные (искусственные) первичные ключи.
  • Комментарии к атрибутам. Комментарии к сущностям.

Задачи

  1. Создать домен атрибутов содержащий 4 значения (Value List).
  2. Создать 3 сущности, каждая с 4 атрибутами. В каждой сущности 1 атрибут использует домен значений. 2 атрибута обязательные, два не обязательные, один атрибут уникальный, но не первичный UID. Сущности используют суррогатные (искусственные) ключи, первичные ключи вручную не устанавливаем. Каждому атрибуту и сущности сделать комментарий для RDBMS.
  3. Создать связи между сущностями 1:N и в свойствах связей установить использование суррогатных ключей.
  4. Создать и применить глоссарий имен.
  5. Преобразовать в реляционную, затем в физическую модель. Изучить код, при наличии ошибок выяснить причину и устранить.
  6. Отобразить комментарии на диаграмме для улучшения читаемости.

1. Создать домен атрибутов с 4 значениями (Value List). Указать строковый тип и параметры типа.

Меню “Tools” – “Domains Administrator”


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

Создать список допустимых значений домена.


Домены атрибутов сохраняются в файл defaultdomains.xml в каталоге с настройками Oracle Data Modeler профиля пользователя, или в каталоге с установленной программой – зависит от операционной системы.

Файл с доменами атрибутов необходимо сохранить в каталоге с моделью с новым именем, подключить его в настройках и сохранить модель. Для этого открыть настройки доменов:

Меню “Tools” – “Domains Administrator”, выбрать файл



  • домен это совокупность всех значений, которые может принимать атрибут сущности
  • каждый атрибут может быть определен только одним доменом атрибутов
  • каждый домен может определять множество атрибутов
  • в понятие домен входит не только область значений домена, но и тип данных, диапазон значений
  • домен «Имя» определен, тип строковые данные, перечень атрибутов «Иванов», «Петров», «Сидоров» как принадлежащие этому домену
  • домен «Почтовый индекс», тип данных NUMBER длиной 6 символов
  • домен «SMS to client», тип строковые данные длинной 100 символов

2. Создать 3 сущности, каждая с 4 атрибутами. В каждой сущности 1 атрибут использует домен значений. 2 атрибута обязательные, два не обязательные, один атрибут уникальный, но не первичный UID. Сущности используют суррогатные ключи, первичные ключи не устанавливаем. Каждому атрибуту и сущности сделать комментарий для RDBMS.

Первичные ключи указывать не нужно, только уникальные атрибуты в разделе “Uniaue Identifiers”.

Использование суррогатных ключей для сущности.


Домен атрибутов и комментарий к атрибуту, параметр Mandatory (обязательности) устанаваливаем у двух из четырех.


Комментарий в свойствах сущности. Он появится на логической диаграмме, отобразится в свойствах таблицы и будет создан в физической модели.


Первичных и уникальных ключей сами не создаем (пусто на вкладке)


Создать связи между сущностями 1:N и в свойствах связей установить использование суррогатных (Искусственных) ключей “Use surrogate keys”. Свойства связи: переносимость Transferable, обязательность Optional и кардинальность Cardinality выбираем какие угодно, это же пример.


3. Создать и применить глоссарий имён.

Использование глоссария облечает работу с правилами именования в модели данных. Имя сущности должно быть в единственном числе, производная из неё таблица во множественном. Имя атрибута может быть длинным и понятным при разработке, но имя производного столбца должно быть кратким для уменьшения кода и удобства работы с запросами. Как правило, для имени столбца используют аббревиатуру имени атрибута. Имя атрибута сущности для автоматически создаваемого первичного ключа будет состоять из имени сущности с добавлением “_id”. Также в Oracle Data Modelerотдельно есть настройки правил для формирования имён внешних ключей, составных первичных ключей, индексов, ограничений уникальности.

Глоссарий имён можно создать новый, но также можно создать шаблон из уже разработанной логической

Предварительно необходимо сделать настройки имён в свойствах Oracle Data Modeler.

В настройках в Oracle Data Modeler, убрать чек-бокс.


Создать глоссарий имен из готовой логической диаграммы. Сохранить его как файл в каталоге с моделью.



Глоссарий обязательно должен содержать множественную форму для имени каждой сущности и аббревиатуру для каждого атрибута. Большие глоссарии можно редактировать выгрузив их в таблицу Excel. Меню редактирования глоссария находится в меню “Tools” – “Glossary Editor”. Используйте глоссарий во множестве проектов, нарабатывайте его в своей практике.

Меню сохранения глоссария


В настройках модели подключить глоссарий.



И примените правила именования к логической модели.


Преобразовать в реляционную.


Результат преобразования будет содержать имена из глоссария, комментарии.


Преобразовать реляционную модель в физическую.


В диалоговом окне можно выбрать не только сохранение, но также вид конкретной СУБД в которой будет использоваться готовая модель. Напомню, что проектирование не зависит от физической реализации СУБД. Мы выберем СУБД Oracle последней доступной в планировщике версии.

Oracle SQL Developer Data Modeler

В настройках генерации физической модели можно указать множество параметров, например выбрать только определенные объекты модели (например вы разработали только представления View). Обязательно установить чек-боксы как на картинке. Все подробности в документации.


Результат – DDL файл с инструкциями для создания схемы в базе данных. Внимательно изучите его, найдите все элементы, которые были созданы в логической диаграмме, при наличии ошибок выяснить причину и устранить. Например домены атрибутов, каким образом создаются ограничения и т.п.


Этот скрипт готов для импорта в базу данных.

4. Отображение комментариев.

Отображение комментариев в логической и реляционной моделях делает диаграммы более читаемыми во время работы.


При открытой логической диаграмме в меню Oracle Data Modeler включить в меню отображение комментариев.


5.Скачайте пример

Изучите её как пример, создайте аналог, прочтите дополнительно документацию и примените знания в своём проекте.

Oracle SQL Developer для работы с запросами Oracle, преимущества и недостатки, автоматическое построение запросов в Query Builder

Одно из наиболее рекомендованных средств для работы с запросами SQL и программными единицами PL / SQL — это Oracle SQL Developer . Это — "родное" программное средство от корпорации Oracle , которое появилось относительно недавно (в 2005 году). Отметим его самые важные отличия:

  • Oracle SQL Developer — полностью бесплатное приложение. Несмотря на это, по своим возможностям и удобству оно не уступает платным средствам ( PL / SQL Developer , Toad , SQL Navigator );
  • Oracle SQL Developer написан на языке Java и может использоваться (с одним и тем же графическим интерфейсом) как под Windows , так и под другими операционными системами, например, Linux ;
  • Oracle SQL Developer не требует установки на компьютер. Все пользовательские настройки в нем хранятся в файлах XML ;
  • Oracle SQL Developer может использоваться для создания запросов к другим системам управления базами данных, например, Microsoft SQL Server , Microsoft Access , MySQL и TimesTen . На многих предприятиях возможность использования единообразного программного средства для создания запросов к разным источникам может быть очень удобной. Правда, отметим, что Oracle SQL Developer знает про базы данных Microsoft далеко не все и лучше использовать его при создании простых запросов к базам данных, отличных от Oracle .

К недостаткам SQL Developer можно отнести несколько непривычный интерфейс (основанный на графических компонентах Java ) и большую ресурсоемкость (особенно с точки зрения оперативной памяти). Кроме того, в Windows все настройки SQL Developer (включая, например, определения пользовательских отчетов и сниппетов) хранятся не в реестре, а в файлах XML в профиле пользователя, что также необходимо учитывать.

Первое, что нужно сделать при работе с Oracle SQL Developer — создать новое соединение с источником данных. Это можно сделать как из меню File | New , так и из окна Connection (нужно щелкнуть правой кнопкой мыши по контейнеру Connections и в контекстном меню выбрать кнопку New ). Откроется окно создание нового соединения (см. рис. 1.4-1).


Рис. 1.4-1 Создание нового соединения в Oracle SQL Developer

После занесения параметров нового соединения в этом окне можно воспользоваться кнопкой Test , чтобы убедиться, что все параметры введены правильно. После этого параметры подключения можно сохранить для последующего использования (кнопка Save ) и выполнить вход на сервер (кнопка Connect ). Откроется окно редактирования кода SQL , в котором можно набирать и выполнять код на SQL и PL / SQL (официально оно называется SQL Worksheet ). Предусмотрен также графический построитель запросов, который можно вызвать, если щелкнуть правой кнопкой мыши по пустому месту в редакторе кода и в контекстном меню выбрать Query Builder (см. рис. 1.4-2).


Рис. 1.4-2 Графический построитель запросов в Oracle SQL Developer

Отметим наиболее важные возможности Oracle SQL Developer .

При помощи контекстного меню для объектов в окне Connections можно выполнить различные административные операции, например, по внесению изменений. При этом для таких операций можно сгенерировать код команды SQL (просмотреть его можно на вкладке SQL соответствующего окна). Отдельно отметим встроенные возможности импорта и экспорта данных для таблиц. При импорте поддерживается единственный формат — Excel , а при экспорте — множество форматов, в том числе Excel ( xls ), CSV , XML , SQL (в виде набора команд INSERT ).

В Oracle SQL Developer реализованы возможности прямого редактирования записей в таблицах баз данных. Для этого нужно в контекстном меню для таблицы в окне Connections выбрать команду Edit , а затем перейти на вкладку Data .

В Oracle SQL Developer предусмотрены средства для отладки кода программных модулей PL / SQL (включая точки останова, пошаговое выполнение, просмотр значений переменных и т.п.). Эти средства в основном доступны из меню Debug .

Заранее заготовленные блоки программного кода доступны из окна Snippets (это окно можно открыть при помощи меню View ). Такие блоки заготовлены как для встроенных функций Oracle SQL , так и для других синтаксических конструкций (операторов условного перехода, циклов, курсоров и т.п.). Набор сниппетов является расширяемым: вы вполне можете добавлять в него свои блоки программного кода.

Для того, чтобы было проще переносить программный код, написанный в расчете на выполнение в SQL Plus , в Oracle SQL Developer предусмотрена поддержка многих синтаксических конструкций SQL Plus (например, обращение к внешним файлам скриптов при помощи символов @ и @@). Однако поддерживаются далеко не все специальные команды SQL Plus .

Если объектов в базе данных много (обычная ситуация для реальных баз данных), и просматривать их все в окне Connection трудно, можно воспользоваться специальным окном поиска объектов. Для этого нужно в меню View воспользоваться командой Find DB Object , затем в открывшемся окне выбрать соединение, ввести имя объекта (можно использовать подстановочные символы) и нажать на Enter . Для объектов в списке результатов из контекстного меню доступны те же возможности, что и для объектов в окне Connections .

Во второй вкладке окна Connections предусмотрены средства работы с отчетами. В основном, правда, эти отчеты предназначены для администраторов баз данных. Можно использовать готовые отчеты и создавать свои (из контекстного меню для контейнера User Defined Reports ). В отчетах предусмотрено использование параметров (например, для отчета, который возвращает все отчеты, принадлежащие какому-либо пользователю, нужно указать его имя).

В Oracle SQL Developer предусмотрены средства переноса информации между различными источниками данных, например, из базы данных SQL Server в Oracle . Средства для выполнения такого переноса сосредоточены в меню Migration .

Oracle SQL Developer - это бесплатная графическая среда управления базами данных и разработки приложений на языках программирования SQL и PL/SQL, разработанная специально для СУБД Oracle Database.

Данная среда написана на языке программирование Java и она работает на всех платформах где есть Java SE.

SQL Developer, позволяет просматривать объекты базы данных, запускать различные SQL инструкции, создавать и редактировать объекты базы данных, импортировать и экспортировать данные, а также создавать всевозможные отчеты.

Oracle SQL Developer помимо Oracle Database может подключаться и к другим базам данных, например, Microsoft SQL Server, MySQL и другим, но для этого необходимы специальные плагины, есть возможность подключения к базе Access.

Где скачать SQL Developer?

Oracle SQL Developer можно скачать на официальном сайте Oracle

После перехода на страницу мы соглашаемся с лицензионным соглашением путем выбора переключателя Accept License Agreement , затем выбираем платформу, на которую мы будем устанавливать, я хочу устанавливать на Windows x64, соответственно выбираю:

На момент написании статьи доступна версия SQL Developer 4.1.3.

Кто не знает что такое JDK ( Java Development Kit) это разработанный компанией Oracle, бесплатный комплект разработчика на языке Java, который включает стандартный компилятор, библиотеки классов Java и исполнительную среду JRE.

Д ля работы среды SQL Developer требуется Java SE , поэтому у Вас на компьютере должен быть установлен Java Development Kit.
Так как в данную сборку JDK включен то нет необходимости качать, но если бы мы выбрали, например, Windows 32-bit/64-bit то как видите пакет JDK не входит в сам дистрибутив SQL Developer.

Подключение SQL Developer к Database Express Edition 11g Release 2

Итак, первый шаг, запускаем SQL Developer. Перед вами должна появиться начальная страница "Start Page".


Следующий шаг, это в контейнере "Connections" который находиться слева, нажимаем на плюсик "New connections".


После чего откроется форма, где нам нужно будет создать соединение с нашой базой Database Express Edition 11g Release 2.

Любой Data-аналитик, связанный с обработкой массивов информации со временем сталкивается с различными архитектурами (MSSQL, oracle, Teradata и др.), подразумевающими под собой использование собственных систем управления БД (SSMS, PL/SQL, Teradata SQL assistant и др.)

Зачастую аналитик вынужден одновременно анализировать данные из связанных между собой, но находящихся в БД с разными технологическими архитектурами. Одновременное использование соответствующих СУБД приводит к неоптимальному использованию ресурсов процессора и оперативной памяти АРМ.

Для оптимизации использования мощностей компьютера аналитика, а также более удобной и эффективной работы, рынком представлены ПО с поддержкой различных видов архитектур БД (например, системы управления БД Aqua Data Studio компании AquaFold).

В данной статье предлагается вариант использования Oracle SQL Developer, как системы управления с подключением к БД различных архитектур.

Oracle SQL Developer бесплатная интегрированная среда разработки на языках SQL и PL/SQL ориентирована на работу в среде Oracle Database. Однако, использование JDBC драйверов подключения к сторонним БД позволяет ей также работать, например, как с БД MSSQL, так и с БД Teradata.

Работа Oracle SQL Developer в среде Microsoft SQL Server

Для примера создадим тестовую БД в среде MSSQL с таблицей из пяти строк.

Для успешного подключения Oracle SQL Developer к базе требуется произвести настройку JDBC драйвера подключения, предварительно загрузив из сети Интернет сам драйвер.

Настройка драйвера осуществляется в меню Tools/Preferences/Database/Third Party JDBC Driver. В соответствующем окне указываем путь нахождения драйвера.

В результате в окне Создания нового подключения появляется вкладка подключения к БД SQLServer. После ввода адреса БД и данных авторизации можно подключится к серверу.

Для использования Windows аутентификации потребуется скопировать файл x64\SSO\ntlmauth.dll из папки драйвера в корневую папку JDK системы (jre\bin).

После завершения настроек система готова к работе с данными.

Работа Oracle SQL Developer в среде teradata

Рассмотрим вариант подключения Oracle SQL Developer к БД Teradata. В качестве примера также создадим тестовую БД с пятью строками.

Для подключения к ней загрузим JDBC драйвер подключения к БД. Произведем соответствующие настройки драйвера в Oracle SQL Developer, после чего появляется возможность создания нового подключения к БД в архитектуре Teradata.


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

1- Введение

PL/SQL (Procedural Language/Structured Query Language) это процедурно-ориентированный язык программирования использующийся для Oracle SQL. Является расширением Oracle SQL.

PL/SQL включает компоненты процедурно-ориентированного языка включая условие и цикл. Он позволяет объявлять константы и переменные, процедуры и функции, виды данных и переменные видов данных, и trigger. Он может обрабатывать исключения (ошибки времени запуска) Массив так же поддерживается для использования коллекций в PL/SQL. От версии 8 и далее он включает объектно-ориентированные функции. Может создать такие единицы PL/SQL как процедуры, функции, пакеты, виды данных, triggers, которые хранятся в базе данных для переиспользования приложением, чтобы взаимодействовать с приложениями Oracle.

Примечание: В следующих изображениях я использую инструмент PL/SQL Developer версии 8.x, но нет отличия если вы используете PL/SQL Developer версии 10.x или другую версию.

2- Что нужно чтобы начать с PL/SQL?

Чтобы иметь быстрый доступ к PL/SQL вам нужен инструмент программирования. По моему опыту работы, вы можете использовать PL/SQL Developer, это визуальный инструмент для работы с Oracle и программирования PL/SQL.

Вы можете посмотреть инструкцию установки и конфигурации PL/SQL по ссылке:

3- Обзор PL/SQL

Есть некоторые определения, которые вы должные четко знать при программировании с PL/SQL:

  1. Каждая команда SQL заканчивается точкой с запятой (;)
  2. Команды "языка определения данных" (Data Definition Language - DDL) не используются в PL/SQL
  3. Команда SELECT.. INTO возврщает много строк создающих exception ( > 1 строки).
  4. Команда SELECT .. INTO не возвращает строки создающие exception
  5. Команды "языка манипулирования данными" (Data Manipulation Language - DML) может подействовать на многие строки данных.
  6. Использовать оператор := чтобы дать значение переменной.

PL/SQL организован по блокам команд. Один блок команды может содержать подблок команд внутри.

4- Базовые команды PL/SQL

Здесь я представляю обзор команд PL/SQL. Вы поймете больше через примеры в следующих частях.

4.1- Команда If-elsif-else

4.2- Не предопределенный цикл (LOOP)

4.3- Предопределенный цикл (FOR LOOP)

4.4- Цикл while (WHILE)

5- Начать с PL/SQL используя PL/SQL Developer

Для начала вам нужно открыть PL/SQL Developer, и войти как пользователь learningsql:


В PL/SQL Developer создать новое окно SQL:




Кликните на иконку

Читайте также: