SQL Developer
Oracle SQL Developer is a free, integrated development environment that simplifies the development and management of Oracle Database in both traditional and Cloud deployments. SQL Developer offers complete end-to-end development of your PL/SQL applications, a worksheet for running queries and scripts, a DBA console for managing the database, a reports interface, a complete data modeling solution, and a migration platform for moving your 3rd party databases to Oracle.
SQL Developer application interfaces
The World’s #1 Tool for Managing your Oracle Database, Oracle SQL Developer provides users with three interfaces: Desktop, Browser, and Command Line.
Oracle SQL Developer
Oracle SQL Developer is a free, integrated development environment that simplifies the development and management of Oracle Database. Java powered application for Windows, OS X, and Linux with + 5 Million users.
- Full featured PL/SQL IDE
- Database administration
- Complete Data Modeling Solution
- 3rd party DBMS migrations to Oracle
- Migrate Oracle On-Premises to Oracle Cloud
Oracle Database Actions
Formerly known as SQL Developer Web, Database Actions brings all of your favorite Oracle Database desktop tool’s features and experience to your browser!
- Included in Oracle Autonomous Cloud Database
- Available with Oracle REST Data Services for your on-premises instances
- Run scripts, manage users, create/edit objects, import data, diagnose performance issues, visualize schemas, etc.
Oracle SQLcl
Oracle SQL Developer Command Line (SQLcl) is a free and modern command line interface for the Oracle Database.
- Very small (25mb), download, unzip, and go!
- Automatic formatting (csv, xml, json, INSERTs, HTML, and more)
- SQL History
- Tab completion
- Build your own commands
- Liquibase integration for schema versioning
Взаимодействие PostgreSQL с Oracle SQL Developer
Я хочу показать как вы можете настроить Oracle SQL Developer для подключения к PostgreSQL.
1) Установка Oracle SQL Developer:
Начнем с того, что у вас уже установлена какая-либо версия базы PostgreSQL.
Я использую ОС Linux: Ubuntu 16, поэтому следующая инструкция по установке будет производится именно для неё.
а) Для начала нам надо установить Java в вашей среде. Если у вас уже стоит Java, переходите к следующему шагу.
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install openjdk-8-jdk
b) Скачивайте Oracle SQL Developer с официального сайта:
с) Перейдите в директорию со скачанным файлов и распакуйте его:
sudo unzip sqldeveloper-*-no-jre.zip -d /opt/
d) Дайте парва на выполнение:
sudo chmod +x /opt/sqldeveloper/sqldeveloper.sh
2) Запуск Oracle SQL Developer:
Теперь вы должны выполнить sqldeveloper.sh для запуска:
f) Если вы впервые запускаете SQL Developer, вам необходимо указать путь к папке JDK. При установке по умолчанию он находится в:
3) Настройка:
Вам надо скачать совместимый драйвер JDBC с сайта PostgreSQL.
(К примеру вы можете загрузить драйвер JDBC41 Postgresql или более новый)
Затем выберите в верхнем меню Tools — Preferences — Database — Third Party JDBC Driver — нажимаем Add Entry — выбираем скачанный драйвер и жмем Ok.
Драйвер успешно добавлен.
Теперь нажимайте на «зеленый плюс» (находится в левой области программы), переходите во вкладку PostgreSQL, введите hostname (имя вашей БД) и port (по умолчанию 5432) — нажмите Test для проверки соединения с вашей текущей базой данных PostgreSQL. Если введенные вами данные верны — вы увидите уведомление об успешном подключении.
4) Получение запросов:
Далее скопируйте ваш запрос с PostgreSQL
select id, name, address from users where username = ‘superman’;
и вставьте его в Oracle SQL в рабочую область Worksheet и нажмите Ctrl + Enter.
Снизу вы увидите результат выполнения команды.
Кликните правой кнопкой мыши по результату в любом месте в данной области (где появился результат выполнения) и выберите Export.
В модальном окне выберите тип операции (insert, delete, …), также укажите имя таблицы, в которую будете производить данную операцию (в моем случае это вставка — insert), првоерьте параметры Encoding — UTF8, выберите место сохранения в вашей файловой системе и имя сохраняемого файла и нажмите на кнопку “Следующий”.
В следующем окне нажмите “Готово”.
В результате в рабочей области Oracle SQL вы увидите подготовленный скрипт, который вы можете скопировать и вставить в вашу таблицу в PostgreSQL. Также вы можете открыть созданный файл, и посмотреть эту команду (-ы) там.
Это помогает, когда вам необходимо вставить большой объем информации в таблицы базы данных и когда поля в таблице имеют разный тип (integer, строки, дата и т.д.).
Надеюсь эта статья будет для вас полезной !
Если вы нашли неточности в описании данной статьи, вы можете написать мне на email и я с радостью вам отвечу.
Kirill Sereda
Как работать в oracle sql developer
Статьи появились благодаря вопросам студентов на семинарах по СУБД. Каждый студент должен был выбрать тему для проектирования базы данных, реализовать полный цикл проектирования от логической и физической диаграммы в Oracle SQL Developer Data Modeler ( SDDM ) до работающей базы данных в СУБД Oracle с использованием APEX. Затем стать пользователем своей разработки: заполнить схему данными и написать аналитические запросы. Некоторые возможности SDDM оказались неочевидными и мы потратили полтора занятия, что бы рассмотреть самое необходимое.
Некоторым студентам, имеющим некоторый стихийно накопленный опыт разработки приложений с использованием СУБД, тяжело перестраиваться на анализ предметной области, трудно понять важность методик проектирования реляционной модели. Потому статья начнется с напоминания порядка разработки.
Не надо сразу делать таблицы. Порядок разработки следующий:
- анализ данных, процессов обработки информации и бизнес-правил, документирование собранной информации
- выявление и определение сущностей
- выявление, описание атрибутов сущностей, определение типов атрибутов
- выявление, описание и определение типов связей между сущностями
- создание матрицы связей и проверка идеи на прочность анализом матрицы связей, документирование бизнес-правил и ограничений
- создание логической диаграммы сущность-связь (ERD) в SDDM, в свойствах атрибутов и связей в том числе отражаются бизнес-правила и ограничения, те что не могут быть реализованы в СУБД описываются отдельным документом и реализуются на прикладном уровне триггерами
Статью готовил я, Присада Сергей Анатольевич, сейчас работаю в Финансовом университете при Правительстве РФ, почта sergey.prisada на яндексе.
План работы.
- Создание нескольких дисплеев для отображения различных нотаций.
- Естественные первичные ключи, или создаваемые вручную, их отображение.
- Соответствие атрибутов связи – правила создания и отображения. Шаблоны именования внешних ключей и иных объектов при преобразовании в реляционную модель.
- Идентификационный столбец или автоматическое создание последовательностей
- Полезная настройка SDDM
1. Создание нескольких дисплеев для отображения различных нотаций.
По-умолчанию используется нотация Баркера, её элементы мы используем в практике на занятиях. Но с внешними ключами без автоматического их создания удобнее работать в SDDM в нотации Бхмана.
Важно: рекомендуется использовать нотацию Баркера, суррогатные ключи, автоматически создаваемые первичные и внешние ключи.
Для удобства рассмотрения диаграммы, или при особых условиях проектирования, может потребоваться отобразить логическую модель в различных нотациях. Например, для отображения внешних ключей и проектирования без суррогатных ключей создаваемых SDDM автоматически.
Создайте два допонительных экрана отображения логической диаграммы – “Display”, и назовите их “Barker” и “Bachman”. В каждом “Display” выберите в меню “View” – “Logical Diagram Notation” выберите нотацию для представления диаграммы в соответствии с их именами.
Создать “Display”
Выбрать его правой клавишей, далее “Properties”

Выбор нотации для каждого “Display”

2. Естественные первичные ключи, или создаваемые вручную, их отображение.
Перейдите в созданный “Display” с именем “Bachman”, в нотации Бахмана можно отобразить внешние ключи на диаграмме: в меню “View” – “View Details” – “All Details”. Отобразятся все свойства сущностей и связей, определённые в логической модели.
При создании связи между сущностями подразумевается связь между первичным уникальным идентификатором родительской сущности и одним из атрибутов дочерней сущности. При этом требуется, чтобы свойства атрибута дочерней сущности, объявляемого внешним ключом, были идентичны первичному уникальному идентификатору родительской сущности.
С целью облегчения проектирования, при создании логической модели SDDM автоматически создает атрибут для внешнего ключа в дочерней сущности. Самостоятельно его создавать не следует. Изменить это поведение нельзя. Имя создаваемого атрибута для вторичного ключа будет состоять из имени и имени первичного ключа родительской сущности с разделителем в виде символа нижнего подчеркивания “_”.
Две сущности, между ними создадим неопределяющую связь 1:N, рассмотрим свойство связи и созданный внещний ключ в свойствах дочерней сущности.
В дочерней сущности “Course” автоматически создан внешний ключ “Department_Dept_name”
Свойства созданного внешнего ключа нельзя изменить, они соответствуют свойству PUID родительской сущности. Можно изменить имя созданного атрибута для внешнего ключа.

В свойствах созданного атрибута для внешнего ключа можно указать изменить его обязательсть чекбокс “M” – это повлияет на свойство обязательности связи. Также можно внешний ключ включить в состав первичного ключа – в этом случае связь будет определяющей.
Удобнее смотреть свойства всех атрибутов в виде таблицы на вкладке “Overview”.
ВАЖНО: при логическом проектировании не требуется заранее определять атрибуты для внешних ключей. Цель логического проектирования – создание логической модели и приведение её минимум к третьей нормальной форме. Внешние ключи являются атрибутами, которые согласно анализу информации, будут являться характеристиками сущности, которые имеют транзитивную зависимость (вторая нормальная форма), поэтому при декомпозиции отношения они должны быть устранены из сущности в другую сущность. Если на логической диаграмме до создания связей в свойствах сущностей есть атрибуты для внешних ключей, то сущности не приведены к третье нормальной форме, а атрибуты на диаграмме дублируются. Дублирующихся атрибутов не должно быть.
Поэтому нет возможности при логическом проектировании свободно назначить атрибут для внешнего ключа. Это задача проектирования реляционной модели. Следует создать сущности в третьей нормальной форме без повторения атрибутов в сущностях на диаграмме, а затем построить связи в соответствии с матрицей связей.
3. Соответствие атрибутов связи – правила создания и отображения. Шаблоны именования внешних ключей и иных объектов при преобразовании в реляционную модель.
Создаваемые автоматически атрибуты внешних ключей, имена ограничений внешних ключей, первичные ключи, индексы и иные объекты, при преобразовании в реляционную модель не всегда имеют удобные для обработки человеком наименования. Если создаваемая база данных будет использоваться только информационными системами, такими как сетевые сервисы или серверы приложений, то лучше оставить автоматические имена. Это гарантирует их уникальность, а правила генерации имён отображают логику и понятный алгоритм их создания. Для удобства работы человека нужно использовать псевдонимы объектов – “Alias”, а также заранее создавать пакеты и процедуры. При этом, в SDDM предусмотрен механизм настройки правил именования автоматически создаваемых объектов.
Выбрать модель, правой клавишей, “Properties”.

Шаблоны именований создаваемых автоматически объектов настриваются в разделе настроек “Settings” – “Naming Standart” – “Templates”. Все возможные переменные отобразятся при нажатии “Add Variable”.

Типы объектов — это термины из реляционной модели и должны быть понятны интуитивно. Переменные, доступные для использования в шаблонах имён, описаны в поле комментарий интерфейса. Дополнительная информация в официальной документации к SDDM.
В качестве примера изменим значение шаблона именования атрибута внешнего ключа, что бы создаваемое имя совпадало с именем атрибута первичного ключа родительской сущности. Изменять надо два шаблона: для логической и реляционной модели
Шаблон для реляционной модели называется “Column Foreign Key”:

Шаблон для логической модели называется “Attribute Relation”:

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

Имена столбцов внешних ключей в реляционной модели.

4. Идентификационный столбец или автоматическое создание последовательностей
В зависимости от типа и версии используемой РСУБД, можно настроить, что бы автоматически создавались последовательности. Включить это можно в настройках. Начиная с версии 12с можно использовать простой механизм Identity collumns, подробнее в документации. Однако рекомендую использовать TRIGGER и SEQUENCE. Это более универсальный механизм, потому что SEQUENCE может использоваться для непересекающейся нумерации строк в разных таблицах, базах данных, на разных серверах.
Выбор механизма в настройках SDDM

5. Полезная настройка SDDM
Для работы с создаваемым кодом настройте формат создаваемого скрипта DDL. Выберите удобные вам отступы, формат, прописные или строчные буквы.

Третья часть будет посвящена обзору методик именования объектов проектируемых баз данных.
Четвертая часть будет посвящена настройке связи (dblink) с SQL Server и MySQL
Пятая часть будет примером создания веб-сервиса API с использованиям ORDS в гетерогенной среде, т.е. с доступом к данным хранимым помимо Oracle, в SQL Server и MySQL
Эффективная работа с Oracle SQL Developer

Вебинар проведёт Гурьянов Михаил Алексеевич. Это один из ведущих преподавателей Центра по направлениям «Сетевые технологии» и «Базы данных», опытнейший практик и профессиональный ИТ-тренер. Обладатель более 30 международных сертификаций от Microsoft и Oracle, включая ORACLE PL/SQL DEVELOPER CERTIFIED ASSOCIATE (OCA) И ORACLE DATABASE SQL EXPERT. Эксперт в области разработки программного обеспечения, технический консультант, разработчик и администратор баз данных. Неоднократно привлекался в качестве специалиста по автоматизации и информатизации для крупных государственных проектов. Не только слушатели, но и преподаватели учатся у Михаила Алексеевича!
Не упустите шанс узнать секреты работы с Oracle SQL Developer! Записывайтесь на вебинар «Специалиста» уже сегодня!
Учебный центр «Специалист»
- >1,4 млн выпускников
- > 35 000 корпоративных клиентов
- 250 преподавателей-экспертов
- 80 учебных классов
- > 1000 курсов
- Гарантия высокого качества обучения
- Более 250 преподавателей-экспертов высокой квалификации
- Гарантированное расписание на год
- Официальные документы после обучения (проверка через ФИС ФРДО)
- Профессиональная консультация по направлению обучения
- Удобное время занятий
- Форматы обучения: очное, онлайн, открытое или очно-заочное
- Авторизованные курсы от ведущих IT-компаний мира
- Престижные российские и международные сертификаты
- Уникальные технические лаборатории
- Корпоративное обучение
- Индивидуальный менеджмент
- Трудоустройство
- Программа привилегий «Настоящий специалист»
Хотите узнать, какие еще у нас есть интересные и подходящие курсы и программы для вас?
Получите индивидуальную консультацию


