Download - лабораторная работа 2
Copyright © Avdeyev V.A. 2008
Системы управления техническими данными
на предприятииЛАБОРАТОРНАЯ РАБОТА №2
Оператор языка DQL
автор: Авдеев Владимир Александрович
Лабораторная работа №2
Copyright © Avdeyev V.A. 2008
Цель работы:Знакомство с языком SQL и приобретение практических
навыков при работе с оператором языка DQL
Содержание работы:Создание типовой БД состоящей из 3-х таблиц. Для
выполнения команд языка SQL использовать функционал PL/SQL Developer
Выполнение упражнений по использованию оператора запроса данных SELECT
Лабораторная работа №2
Краткая история языка SQL (1/2)
Copyright © Avdeyev V.A. 2008
Язык SQL, предназначенный для взаимодействия с базами данных, появился в середине 70-х гг. (первые публикации датируются 1974 г.) и был разработан в компании IBM в рамках проекта экспериментальной реляционной СУБД System R. Исходное название языка SEQUEL (Structured English Query Language).
Возможности языка:средства определения и манипулирования схемой БД; средства определения ограничений целостности и триггеров; средства определения представлений БД; средства определения структур физического уровня, поддерживающих эффективное выполнение запросов; средства авторизации доступа к отношениям и их полям; средства определения точек сохранения транзакции, и выполнения фиксации и откатов транзакций.
Лабораторная работа №2
Краткая история языка SQL (2/2)
Copyright © Avdeyev V.A. 2008
1982 г. - стандартизации языка SQL
разработка спецификации стандартного языка реляционных баз данных поручена комитету по базам данных Американского национального института стандартов (ANSI)
1985 г. - 1987 г.
спецификация одобрена Международной организацией по стандартизации (ISO) - стандарт принято называть SQL/86.
1989 г. стандарт SQL/86 был несколько расширен - ANSI/ISO SQL/89 1992 г. - SQL/92
манипулирование схемой БД, управление транзакциями (появились точки сохранения) и сессиями (сессия – это последовательность транзакций, в пределах которой сохраняются временные отношения), подключения к БД
1995 г. - SQL/CLI - набор спецификаций интерфейсов процедур 1996 г. - SQL/PSM - способы определения и использования хранимых процедур 1999 г. - SQL:1999 (SQL/Framework, SQL/Foundation) 2003 г. - SQL:2003
Лабораторная работа №2
Создание типовой базы данных (1/3)
Copyright © Avdeyev V.A. 2008
Создайте таблицу «DEPARTMENT» со структурой
Лабораторная работа №2
Создание типовой базы данных (2/3)
Copyright © Avdeyev V.A. 2008
Создайте таблицу «EQUIPMENT» со структурой
Лабораторная работа №2
Создание типовой базы данных (3/3)
Copyright © Avdeyev V.A. 2008
Создайте таблицу «TP» со структурой
Лабораторная работа №2
Именование таблиц и столбцов
Copyright © Avdeyev V.A. 2008
Присваивая имена таблицам и столбцам, вы должны следовать определенным правилам. Некоторые из них носят обязательный характер, тогда как другие представляют собой рекомендации, помогающие придать таблицам профессиональный вид.
Максимальная длина имени таблицы или столбца равна 30 символам.Имена таблиц и столбцов могут содержать буквы, цифры и символ подчеркивания (_);Имена таблиц и столбцов должны начинаться с буквенного символа;Символы верхнего и нижнего регистров в именах таблиц и столбцов считаются одинаковыми;Имя таблицы или столбца не должно содержать пробелы;Каждая из таблиц должна иметь имя, отличное от имен других таблиц созданных Вами;Некоторые слова представляют собой команды и параметры СУБД, a следовательно, не могут использоваться в качестве имен таблиц или столбцов.
Лабораторная работа №2
Заполните таблиц тестовыми значениями (1/3)
Copyright © Avdeyev V.A. 2008
Заполните таблицу «DEPARTMENT» тестовыми значениями
Лабораторная работа №2
Заполните таблиц тестовыми значениями (2/3)
Copyright © Avdeyev V.A. 2008
Заполните таблицу «EQUIPMENT» тестовыми значениями
Лабораторная работа №2
Заполните таблиц тестовыми значениями (3/3)
Copyright © Avdeyev V.A. 2008
Заполните таблицу «TP» тестовыми значениями
Лабораторная работа №2
Использование SQL для извлечения информации из таблиц
Copyright © Avdeyev V.A. 2008
Создание запросаSQL означает "Структурированный Язык Запросов". Запросы —
вероятно, наиболее часто используемый аспект SQL
Что такое запрос?Запрос — команда, которую вы даете вашей программе базы данных, и
которая сообщает ей, чтобы она вывела определенную информацию из таблиц в память.
Где применяются запросы?Все запросы в SQL состоят из одиночной команды. Структура этой
команды обманчиво проста, потому что вы должны расширять ее так, чтобы выполнить высоко сложные оценки и обработки данных. Эта команда называется — SELECT
Лабораторная работа №2
Команда SELECT
Copyright © Avdeyev V.A. 2008
Выводит на экран таблицу подразделений (Department)
Лабораторная работа №2
SELECT DEP_DESC, DEP_NAMEFROM Department
SELECT Ключевое слово, которое сообщает базе данных, что эта команда — запрос. Все запросы начинаются этим словом, сопровождаемым пробелом
DEP_NAME, DEP_DESC
Это — список столбцов из таблицы, которые выбираются запросом. Любые столбцы, не перечисленные здесь, не будут включены в вывод команды
FROMDepartment
Ключевое слово, подобно SELECT, которое должно быть представлено в каждом запросе. Оно сопровождается пробелом и затем именем таблицы используемой в качестве источника информации
SELECT * FROM DepartmentSELECT DEP_NAME, DEP_DESCFROM Department
Удаление избыточных данных
Copyright © Avdeyev V.A. 2008
DISTINCT (ОТЛИЧИЕ) аргумент, который обеспечивает Вас способом устранять двойные
значения из вашего предложения SELECT
Лабораторная работа №2
SELECT EQ_IDFROM TP
SELECT DISTINCT EQ_IDFROM TP
Квалифицированный выбор
Copyright © Avdeyev V.A. 2008
WHERE предложение команды SELECT, которое позволяет вам устанавливать
предикаты, условие которых может быть или верным или неверным для любой строки таблицы. Команда извлекает только те строки из таблицы, для которых такое утверждение верно
Лабораторная работа №2
SELECT *FROM TPWHERE EQ_ID =‘Д87'
Упражнения
Copyright © Avdeyev V.A. 2008
Напишите запрос, который вывел бы все строки из таблицы «EQUIPMENT», для которых номер цеха равен 7.
Напишите запрос, который вывел бы таблицу «DEPARTMENT» со столбцами в следующем порядке: «DEP_NAME», «DEP_DESC» и «DEP_RATING».
Напишите запрос, который бы вывел «EQ_RATING», сопровождаемую моделью оборудования «EQ_MODEL» в цехе номер 7.
Напишите запрос, который вывел бы без каких бы то ни было повторений значения моделей и наименований оборудования используемого в техпроцессе в таблице «TP».
Лабораторная работа №2