лабораторная работа 2

16
Copyright © Avdeyev V.A. 2008 Системы управления техническими данными на предприятии ЛАБОРАТОРНАЯ РАБОТА №2 Оператор языка DQL автор: Авдеев Владимир Александрович

Upload: studentkai

Post on 07-Jul-2015

133 views

Category:

Education


0 download

TRANSCRIPT

Page 1: лабораторная работа 2

Copyright © Avdeyev V.A. 2008

Системы управления техническими данными

на предприятииЛАБОРАТОРНАЯ РАБОТА №2

Оператор языка DQL

автор: Авдеев Владимир Александрович

Page 2: лабораторная работа 2

Лабораторная работа №2

Copyright © Avdeyev V.A. 2008

Цель работы:Знакомство с языком SQL и приобретение практических

навыков при работе с оператором языка DQL

Содержание работы:Создание типовой БД состоящей из 3-х таблиц. Для

выполнения команд языка SQL использовать функционал PL/SQL Developer

Выполнение упражнений по использованию оператора запроса данных SELECT

Лабораторная работа №2

Page 3: лабораторная работа 2

Краткая история языка SQL (1/2)

Copyright © Avdeyev V.A. 2008

Язык SQL, предназначенный для взаимодействия с базами данных, появился в середине 70-х гг. (первые публикации датируются 1974 г.) и был разработан в компании IBM в рамках проекта экспериментальной реляционной СУБД System R. Исходное название языка SEQUEL (Structured English Query Language).

Возможности языка:средства определения и манипулирования схемой БД; средства определения ограничений целостности и триггеров; средства определения представлений БД; средства определения структур физического уровня, поддерживающих эффективное выполнение запросов; средства авторизации доступа к отношениям и их полям; средства определения точек сохранения транзакции, и выполнения фиксации и откатов транзакций.

Лабораторная работа №2

Page 4: лабораторная работа 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

Page 5: лабораторная работа 2

Создание типовой базы данных (1/3)

Copyright © Avdeyev V.A. 2008

Создайте таблицу «DEPARTMENT» со структурой

Лабораторная работа №2

Page 6: лабораторная работа 2

Создание типовой базы данных (2/3)

Copyright © Avdeyev V.A. 2008

Создайте таблицу «EQUIPMENT» со структурой

Лабораторная работа №2

Page 7: лабораторная работа 2

Создание типовой базы данных (3/3)

Copyright © Avdeyev V.A. 2008

Создайте таблицу «TP» со структурой

Лабораторная работа №2

Page 8: лабораторная работа 2

Именование таблиц и столбцов

Copyright © Avdeyev V.A. 2008

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

Максимальная длина имени таблицы или столбца равна 30 символам.Имена таблиц и столбцов могут содержать буквы, цифры и символ подчеркивания (_);Имена таблиц и столбцов должны начинаться с буквенного символа;Символы верхнего и нижнего регистров в именах таблиц и столбцов считаются одинаковыми;Имя таблицы или столбца не должно содержать пробелы;Каждая из таблиц должна иметь имя, отличное от имен других таблиц созданных Вами;Некоторые слова представляют собой команды и параметры СУБД, a следовательно, не могут использоваться в качестве имен таблиц или столбцов.

Лабораторная работа №2

Page 9: лабораторная работа 2

Заполните таблиц тестовыми значениями (1/3)

Copyright © Avdeyev V.A. 2008

Заполните таблицу «DEPARTMENT» тестовыми значениями

Лабораторная работа №2

Page 10: лабораторная работа 2

Заполните таблиц тестовыми значениями (2/3)

Copyright © Avdeyev V.A. 2008

Заполните таблицу «EQUIPMENT» тестовыми значениями

Лабораторная работа №2

Page 11: лабораторная работа 2

Заполните таблиц тестовыми значениями (3/3)

Copyright © Avdeyev V.A. 2008

Заполните таблицу «TP» тестовыми значениями

Лабораторная работа №2

Page 12: лабораторная работа 2

Использование SQL для извлечения информации из таблиц

Copyright © Avdeyev V.A. 2008

Создание запросаSQL означает "Структурированный Язык Запросов". Запросы —

вероятно, наиболее часто используемый аспект SQL

Что такое запрос?Запрос — команда, которую вы даете вашей программе базы данных, и

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

Где применяются запросы?Все запросы в SQL состоят из одиночной команды. Структура этой

команды обманчиво проста, потому что вы должны расширять ее так, чтобы выполнить высоко сложные оценки и обработки данных. Эта команда называется — SELECT

Лабораторная работа №2

Page 13: лабораторная работа 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

Page 14: лабораторная работа 2

Удаление избыточных данных

Copyright © Avdeyev V.A. 2008

DISTINCT (ОТЛИЧИЕ) аргумент, который обеспечивает Вас способом устранять двойные

значения из вашего предложения SELECT

Лабораторная работа №2

SELECT EQ_IDFROM TP

SELECT DISTINCT EQ_IDFROM TP

Page 15: лабораторная работа 2

Квалифицированный выбор

Copyright © Avdeyev V.A. 2008

WHERE предложение команды SELECT, которое позволяет вам устанавливать

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

Лабораторная работа №2

SELECT *FROM TPWHERE EQ_ID =‘Д87'

Page 16: лабораторная работа 2

Упражнения

Copyright © Avdeyev V.A. 2008

Напишите запрос, который вывел бы все строки из таблицы «EQUIPMENT», для которых номер цеха равен 7.

Напишите запрос, который вывел бы таблицу «DEPARTMENT» со столбцами в следующем порядке: «DEP_NAME», «DEP_DESC» и «DEP_RATING».

Напишите запрос, который бы вывел «EQ_RATING», сопровождаемую моделью оборудования «EQ_MODEL» в цехе номер 7.

Напишите запрос, который вывел бы без каких бы то ни было повторений значения моделей и наименований оборудования используемого в техпроцессе в таблице «TP».

Лабораторная работа №2