Чтение онлайн

на главную - закладки

Жанры

Самоучитель. Курс SQL. Базы данных. ORACLE
Шрифт:

Осталось только закачать в нашу пока пустую базу данных тестовые данные.

5.3. Создание тестовой базы данных

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

Слева, в дереве объектов базы данных активного подключения, мы можем видеть все объекты базы данных, разделенные по группам (папкам). Например, таблицы расположены в группе «Tables».

Большое

окно, занимающее почти весь экран – это окно написания SQL–запросов. Здесь мы будем проводить почти все наше рабочее время и создавать исключительно шедевры на языке SQL! Можно одновременно работать с более чем одним запросом. Например, составляя и продумывая один большой SQL–запрос, мы можем открыть еще одно SQL–окно и написать некоторый другой запрос на проверку некоторых сторонних данных.

Чтобы открыть новое (или первое) SQL окно (если мы его закрыли), нужно сверху в главном меню нажать «Tools» («Инструменты») – «SQL Worksheet» («SQL окно»). Или, по–умолчанию, Alt+F10. Далее, в появившемся окне, нужно выбрать к какой базе будем писать SQL запросы – выберем наше единственное подключение и нажмем «OK».

Если бы у нас было бы несколько подключений, то в одном SQL–окне мы могли бы работать с одной базой данных, например, с тестовой, а во втором SQL–окне мы могли бы работать с боевой базой данных. Получив запросами данные из разных баз данных в разных окнах, мы могли бы их, например, сравнивать. Хотя для этого можно было бы использовать более удобные средства.

Открыть новое SQL–окно можно, также, нажав кнопку на панели инструментов.

Приступим к загрузке в нашу базу данных тестовых данных. Вначале закачиваем скрипт на компьютер:

https://prime–soft.biz/download/dbscript1.sql

Теперь нажимаем «File» («Файл») – «Open» («Открыть») или одноименную кнопку на панели инструментов (в виде открывающейся папки) и выбираем скаченный файл. В открывшемся окне нажимаем кнопку на панели инструментов «Run Script» («Выполнить скрипт»).

После выполнения скрипта наша база данных будет готова!

В группе объектов «Tables» («Таблицы») в дереве объектов базы данных появятся новые объекты. Если хотим видеть их прямо сейчас, а не дожидаться перезапуска программы SQL Developer, – нужно щелкнуть правой кнопкой мыши по объектам «Tables» («Таблицы») и выбрать «Refresh» («Обновить»).

В группе объектов «Tables» («Таблицы») мы видим сейчас достаточно много объектов и большая часть из них системные, то есть они не были добавлены нашим скриптом и мы с ними работать не будем. Почему же тогда они отображаются? Потому, что мы сейчас используем системную учетную запись. Мы администраторы. По–хорошему, уже бизнес (тестовые) объекты (таблицы с данными) мы могли прогрузить в отдельной схеме данных, а не в системном пользователе, чтобы слева в дереве объектов не отображались «лишние» таблицы. Но мы итак уже проделали слишком много работы для подготовки нашего рабочего места. Поэтому, пока остановимся на том, что будем работать (практиковаться, учиться) из–под пользователя SYSTEM. И ничего, что мы видим «лишние» таблицы в дереве объектов. Мы просто скоро запомним некоторый набор таблиц, которые мы будем использовать и с которыми будем практиковаться при написании SQL–запросов. Системные таблицы трогать не будем!

Мы установили ORACLE, программу SQL Developer, настроили (создали и сохранили) подключение к установленной СУБД и еще загрузили тестовые данные для выполнения практических задач! Мы подготовили рабочее место!

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

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

6. Операторы сравнения IN, LIKE и BETWEEN

Помимо основных операторов сравнения (больше, меньше, равно, меньше или равно, больше или равно) в языке SQL есть операторы, упрощающие выборку данных по диапазону или множеству. Например, если нужно из таблицы банковских операций отобрать те, у которых код операции 12, 23, 48, 49, 54 или один из еще некоторого множества чисел, то, чтобы не перебирать все эти значения при сравнении со столбцом через оператор OR, можно делать запросы вида:

Отберутся операции, у которых в столбце «OPER_CODE» значение входит в перечисленное множество, иначе говоря, одно из них. Символ звездочки после слова SELECT указывает на то, что будут выбраны все столбцы таблицы «Oper».

Отберем сотрудников, работающих в первом филиале в первом, втором или третьем департаменте.

Надеюсь, что применение оператора IN достаточно хорошо стало понятно. Теперь рассмотрим следующий оператор. В начале выберем сотрудника, зная его точное ФИО:

Получаем результат:

Выбралась конкретная строчка из таблицы, у которой в столбце NAME строгое соответствие запрашиваемому текстовому значению.

Для того, чтобы искать не по точному соответствию, а по фрагменту или маске, можно использовать оператор LIKE (like – это не только с англ. «нравиться», но и «как», в смысле «похож»).

В результате из таблицы сотрудников будут отобраны Анны, а точнее те строчки, у которых в столбце NAME есть фрагмент «Анна». Значки процентов в начале и конце слова означают, что в этом месте может быть еще текст. То есть слово «Анна» должно быть в NAME, но оно может сопровождаться в начале и в конце еще текстом. И такие совпадения будут отобраны. Если в начале или в конце текста не будет, а также, если NAME состоит целиком только из «Анна», то такие строчки тоже будут отобраны. Результат:

Попробуем отобрать всех сотрудников с именем «Иван»:

Сколько много данных вернулось! Похоже, здесь есть что–то лишнее:

Мы видим, что помимо сотрудников с именем «Иван» отобрались еще и те, у кого в столбце NAME есть этот фрагмент не в составе имени, а является частью фамилии или отчества. Что же делать? Мы можем в качестве фрагмента поиска указать « Иван » с пробелами в начале и конце! Таким образом это будет означать, что слева и справа есть еще слова, отделенные от «Иван» пробелами – это фамилия и отчество.

Поделиться:
Популярные книги

Элизиум. Аликс и монеты

Андерсон Александр
1. Элизиум
Фантастика:
фэнтези
сказочная фантастика
8.98
рейтинг книги
Элизиум. Аликс и монеты

Кодекс Охотника. Книга XXIII

Винокуров Юрий
23. Кодекс Охотника
Фантастика:
боевая фантастика
попаданцы
5.00
рейтинг книги
Кодекс Охотника. Книга XXIII

Золотой ворон

Сакавич Нора
5. Все ради игры
Фантастика:
зарубежная фантастика
5.00
рейтинг книги
Золотой ворон

Кукловод

Злобин Михаил
2. О чем молчат могилы
Фантастика:
боевая фантастика
8.50
рейтинг книги
Кукловод

Твое сердце будет разбито. Книга 1

Джейн Анна
Любовные романы:
современные любовные романы
5.50
рейтинг книги
Твое сердце будет разбито. Книга 1

Старый, но крепкий 8

Крынов Макс
8. Культивация без насилия
Фантастика:
рпг
уся
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Старый, но крепкий 8

Барон

Первухин Андрей Евгеньевич
5. Ученик
Фантастика:
фэнтези
5.60
рейтинг книги
Барон

Лекарь Империи 15

Карелин Сергей Витальевич
15. Лекарь Империи
Фантастика:
городское фэнтези
аниме
фэнтези
попаданцы
6.80
рейтинг книги
Лекарь Империи 15

Черный Маг Императора 13

Герда Александр
13. Черный маг императора
Фантастика:
попаданцы
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Черный Маг Императора 13

Я еще царь. Книга XXX

Дрейк Сириус
30. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я еще царь. Книга XXX

Адвокат Империи 14

Карелин Сергей Витальевич
14. Адвокат империи
Фантастика:
городское фэнтези
аниме
попаданцы
5.00
рейтинг книги
Адвокат Империи 14

Тринадцатый X

NikL
10. Видящий смерть
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Тринадцатый X

Последний реанорец. Том I и Том II

Павлов Вел
1. Высшая Речь
Фантастика:
фэнтези
7.62
рейтинг книги
Последний реанорец. Том I и Том II

Кожедуб

Бодрихин Николай Георгиевич
1216. Жизнь замечательных людей
Проза:
военная проза
5.00
рейтинг книги
Кожедуб