Файл: Учебники по русскому языку издательства Дрофа. Сколько записей было отобрано.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 11.12.2023
Просмотров: 401
Скачиваний: 8
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
Практическая работа № 0.Работа с готовой таблицей
Практическая работа № 16-Access.
Практическая работа № 16-SQLite.
Практическая работа (дополнительная).Язык SQL (многотабличная база данных, OpenOffice Base)
Практическая работа (дополнительная).Язык SQL (многотабличная база данных, MS Access)
SELECT * FROM Туры WHERE Страна = 'Норвегия'
Проверьте работу этого оператора.
-
Составьте запрос, который выбирает из таблицы «Туры» значения полей «Страна», «Транспорт» и «Цена» для всех автобусных туров:
Ответ:
-
Составьте запрос, который выбирает из таблицы «Туры» значения всех полей для туров c ценой меньше 10000 руб:
Ответ:
-
Для того, чтобы отсортировать данные по некоторому полю, в запросе после ключевых слов ORDER BY (англ. «упорядочить по») указывают название этого поля:
SELECT * FROM Туры ORDER BY Цена
Проверьте работу этого запроса.
Если в конце предыдущего запроса добавить слово DESC (англ. «descending» – нисходящий), сортировка выполняется в обратном порядке.
-
Составьте запрос, который выбирает из таблицы «Туры» значения всех полей для туров c ценой больше 10000 руб. и сортирует результаты по убыванию цены:
Ответ:
-
В запросах можно использовать стандартные функции. Например, функция MIN определяет минимальное значение заданного поля среди всех записей:
SELECT MIN(Цена) FROM Туры
Результат этого запроса – одно число.
-
Составьте запрос, который находит минимальную цену для туров в Норвегию:
Ответ:
-
Результаты запросов можно использовать в других запросах – получается вложенный запрос. Например, запрос
SELECT * FROM Туры WHERE Цена =
(SELECT MIN(Цена) FROM Туры WHERE Страна = 'Норвегия')
вернет данные о самом дешевом туре.
-
Составьте запрос, который находит тур минимальной цены на самолёте:
Ответ:
Изменение и удаление данных
-
Для изменения записей используется оператор UPDATE. Запрос, приведенный ниже, увеличивает цены всех туров на 10%:
UPDATE Туры SET Цена = Цена*1.1
Проверьте, что данные в таблице «Туры» действительно изменились.
-
Запишите запрос, который вернёт цены в исходное состояние, и выполните его.
Ответ:
-
Авиакомпании в данный момент представляют скидку на билеты, так что цены всех туров на самолётах составляют 80% от исходных. Составьте и выполните соответствующий запрос.
Ответ:
Какая стоимость получилась у тура в Грецию?
Ответ:
-
Создайте новую таблицу «Туры 2», имеющую точно такую же структуру, как и таблица «Туры». Запишите соответствующий запрос:
Ответ:
-
Просмотрите содержание таблицы «Туры 2». Какой запрос нужно ввести для этого?
Ответ:
Сколько записей вы обнаружили?
Ответ:
-
Скопируйте все данные из таблицы «Туры» в новую таблицу «Туры 2»
INSERT INTO Туры2 SELECT * FROM Туры;
Проверьте, что данные в таблице «Туры2» действительно появились.
-
Удалите из таблицы «Туры2» все туры в Германию с помощью запроса
DELETE FROM Туры2 WHERE Страна = 'Германия'
Проверьте, что данные в таблице «Туры2» действительно изменились.
-
Удалите таблицу «Туры2», которая больше не нужна, с помощью запроса
DROP TABLE Туры2
Проверьте, что таблица «Туры2» удалена из списка таблиц.
- 1 2 3 4 5 6 7 8 9
Создание базы данных
Уровень А.
-
Создайте новую базу данных Футбол. -
Создайте таблицу Футбол. В конструкторе добавьте следующие поля:
-
Команда (ключевое поле, размер поля – 20 символов) -
Выигрыши -
Ничьи -
Проигрыши -
Зарплата
Определите правильный тип данных для каждого поля.
Ответ:
-
Введите следующие данные:
Команда | Выигрыши | Ничьи | Проигрыши | Зарплата |
Аметист | 10 | 7 | 3 | 13 290 р. |
Бирюза | 5 | 8 | 7 | 12 500 р. |
Восход | 13 | 5 | 2 | 22 000 р. |
Закат | 7 | 8 | 5 | 18 780 р. |
Коллектор | 11 | 6 | 3 | 20 200 р. |
Кубань | 6 | 12 | 2 | 14 000 р. |
Малахит | 12 | 3 | 5 | 17 340 р. |
Ротор | 8 | 12 | 0 | 15 820 р. |
Статор | 9 | 10 | 1 | 19 300 р. |
Финиш | 12 | 0 | 8 | 12 950 р. |
-
Отсортируйте записи по убыванию количества выигрышей. -
Примените фильтр, который отбирает только команды, имеющие более 10 побед и меньше 5 проигрышей. Сколько команд отобрано с помощью этого фильтра?
Ответ:
Уровень B.
-
Создайте новую базу данных Кафе.
Все таблицы постройте с помощью конструктора.
-
Установите связи между таблицами:
-
Заполните таблицы данными из §14 (рис. 3.16). Добавьте свои данные ещё о трёх заказах, сделанных в другие дни.
Уровень С.
-
Создайте новую базу данных Кафе. Таблицы Блюда и Заказано постройте с помощью конструктора.
-
Запишите SQL-запрос для создания таблицы Заказы:
Ответ:
Примечание. Тип «дата» на языке SQL записывается как DATE.
Выполните этот запрос. В списке таблиц должна появиться новая таблица Заказы.
-
Установите связи между таблицами:
-
Заполните таблицу Блюда данными из §14 (рис. 3.16). -
Таблицу Заказы заполните с помощью SQL-запросов. Запишите эти запросы в следующем поле:
Ответ:
Примечание. Дата 03.11.2014 вводится на языке SQL следующим образом:
– в OpenOffice Base как '2014-11-03';
– в русской версии MicrosoftAccessкак '03.11.2014'.
-
Заполните таблицу Заказано вручную в режиме таблицы. -
Добавьте в базу (любым способом) новые данные ещё о трёх заказах, сделанных в другие дни.
Практическая работа (дополнительная).
Язык SQL (многотабличная база данных, OpenOffice Base)
В этой работе вы познакомитесь с новой командой ALTER TABLE (изменить таблицу) языка SQL и научитесь составлять запросы к многотабличной реляционной базе данных.
Создание и заполнение таблиц
-
Используя только SQL-запросы, постройте три таблицы для реляционной базы данных кафе (значок обозначает первичный ключ таблицы):
Запишите соответствующие SQL-запросы:
Ответ:
-
Теперь нужно построить связи между таблицами:
Для этой цели используется команда ALTER TABLE (англ. изменить таблицу). Построить связь между таблицами – это значит задать ограничение (CONSTRAINT), которое связывает первичный ключ одной таблицы с полем соответствующего типа другой. Если связываемое поле второй таблицы – неключевое, то оно называется внешним ключом (FOREIGN KEY). Например, команда для создания связи 1:N между ключевым полем Номер таблицы Заказы и неключевым полем Номер заказа таблицы Заказано выглядит так:
ALTER TABLE "Заказано"
ADD CONSTRAINT ORDER_NO
FOREIGN KEY("Номер заказа")
REFERENCES "Заказы"("Номер")
Такая запись дословно означает:
Изменить таблицу "Заказано"
добавить связь ORDER_NO
внешний ключ "Номер заказа"
ссылается на поле "Номер" таблицы "Заказы"
Здесь ORDER_NO – это просто имя, которое мы выбрали для этой связи (можно было выбрать и другое).
-
Введите и выполните показанный выше SQL-запрос на добавление связи. Зайдите в меню Сервис – Связи и убедитесь, что связь действительно создана4. -
Составьте и выполните SQL-запрос на добавление второй связи. Запишите этот запрос в поле для ответа.
Ответ:
-
С помощью SQL-запросов заполните базу следующими данными
Выбор данных и сортировка
-
Построим в режиме SQL запрос СоставЗаказа, который выводит номер заказа и название заказанных блюд. Эти данные находятся в двух таблицах – Заказано и Блюда, поэтому их нужно как-то объединить. Для этого используется связь 1:N между таблицами, которую мы недавно установили. Действительно, для каждой записи в таблице Заказано нужно выбрать название блюда из таблицы Блюда, код которого совпадает с полем Заказано.Код блюда.