файл. Минаева С. С., Рослова Л. О., Рыдзе О. А. и. Математика. 1 класс. Учебники по русскому языку издательства Дрофа. Сколько записей было отобрано
Скачать 0.62 Mb.
|
|
Команда | Выигрыши | Ничьи | Проигрыши | Зарплата |
Зубр | 8 | 5 | 7 | 15 900 р. |
Тур | 10 | 5 | 6 | 12 300 р. |
Бизон | 15 | 3 | 3 | 18 700 р. |
Проверьте, появились и эти записи в таблице Футбол.
Выполните запрос ЗапросОчки и посмотрите, как изменилась ситуация в турнирной таблице. Какая команда теперь на первом месте и сколько у неё очков?
Ответ:
Оформление отчёта
При выполнении этой работы используются база данных Футбол, с которой вы работали на предыдущих уроках.
Постройте отчет Результаты на основе запроса ЗапросОчки с помощью мастера. Расположите команды по убыванию количества набранных очков.
Измените внешний вид отчета так, как показано на рисунке. При редактировании отчёта в OpenOffice Writer нужно добавить новый столбец Место и установить для ячейки стиль нумерованного списка.
Язык SQL (OpenOffice Base)
Язык SQL (StructuredQueryLanguage) – это специальный язык для управления данными. С его помощью можно полностью контролировать базу данных и выполнять все операции, посылая запросы (команды) в текстовом виде. Таким образом, например, можно управлять базой данных с удаленного компьютера.
В этой работе вы познакомитесь с основными командами языка SQL:
CREATE TABLE создать таблицу
SELECT выбрать данные
UPDATE изменить данные
DELETE удалить данные
DROP удалить таблицу
Создайте новую пустую базу данных SQLbase.odb.
Создание и заполнение таблиц
Выберите пункт верхнего меню Сервис – SQL и введите следующую команду для создания таблицы:
INTEGER_NOT_NULL_PRIMARY_KEY,_"Страна"_VARCHAR(50)_NOT_NULL,_"Транспорт_"_VARCHAR(20)_NOT_NULL'>CREATE TABLE "Туры" (
"Код" INTEGER NOT NULL PRIMARY KEY,
"Страна" VARCHAR(50) NOT NULL,
"Транспорт" VARCHAR(20) NOT NULL,
"Цена" DECIMAL(20,2) NOT NULL )
В этой команде требуется создать таблицу (CREATE TABLE) c именем «Туры». В таблице должно быть 4 поля:
Код – целое число (INTEGER), непустое (NOT NULL), первичный ключ таблицы (PRIMARY KEY)
Страна – строка длиной до 50 символов, непустое
Транспорт – строка длиной до 20 символов, непустое
Цена – поле для хранения денежной суммы в виде числа с 20 значащими цифрами, из них 2 – в дробной части (DECIMAL(20,2))
Названия таблиц и полей заключаются в двойные кавычки!
Выполните эту команду (кнопка Выполнить). Для того, чтобы увидеть созданную таблицу, нужно закрыть базу данных и открыть её заново. Проверьте, что таблица действительно создана.
Зайдите в режим Конструктора и проверьте свойства полей таблицы, которые мы задали с помощью команды CREATE TABLE.
Зайдите в окно SQL и выполните команду для добавления в базу новой записи:
INSERT INTO "Туры"
VALUES(1, 'Финляндия', 'автобус', 1200)
Эта команда вставляет (INSERT) в таблицу «Туры» одну запись. После ключевого слова VALUES в скобках перечислены через запятую значения полей в том порядке, в котором они задавались при создании таблицы.
Символьные строки в значениях полей заключаются в апострофы!
Выполните ещё одно добавление записи:
INSERT INTO "Туры"
VALUES (1, 'Норвегия', 'самолёт', 15000)
Какая ошибка произошла? В чём её причина?
Ответ:
Исправьте ошибку и добавьте новую запись правильно. В ответе запишите SQL-запрос.
Ответ:
Аналогично добавьте в таблицу ещё несколько записей:
-
Страна
Транспорт
Цена
Швеция
паром
9000 р.
Германия
автобус
15700 р.
Греция
самолёт
23000 р.
Норвегия
автобус
8000 р.
Германия
самолёт
19000 р.
Выбор данных и сортировка
Создайте новый запрос в режиме SQL3
SELECT * FROM "Туры"
и выполните его. Посмотрите на результат.
Этот оператор выберет все поля (*) всех записей из таблицы «Туры».
Вместо * можно указать через запятую список нужных полей:
SELECT "Страна", "Цена" FROM "Туры"
Проверьте результат выполнения этого запроса.
Чаще всего нужно выбрать только записи, удовлетворяющие некоторому условию отбора. Для этого используется ключевое слово WHERE, после которого стоит условие:
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 "Туры")
вернет данные о самом дешевом туре.
Составьте запрос, который находит тур минимальной цены на самолёте:
Ответ:
Изменение и удаление данных
Для изменения записей используется оператор UPDATE. Запрос, приведенный ниже, увеличивает цены всех туров на 10%:
UPDATE "Туры" SET "Цена" = "Цена"*1.1
Проверьте, что данные в таблице «Туры» действительно изменились.
Авиакомпании в данный момент представляют скидку на билеты, так что цены всех туров на самолётах составляют 80% от исходных. Составьте и выполните соответствующий запрос.
Ответ:
Какая стоимость получилась у тура в Грецию?
Ответ:
Скопируйте таблицу «Туры», назвав копию «Туры2». Удалите все туры в Германию с помощью запроса
DELETE FROM "Туры2" WHERE "Страна" = 'Германия'
Проверьте, что данные в таблице «Туры2» действительно изменились.
Удалите таблицу «Туры2», которая больше не нужна, с помощью запроса
DROP TABLE "Туры2"
Попытайтесь открыть таблицу «Туры2». Загрузить базу данных заново и убедитесь, что таблица «Туры2» действительно удалена.
Оператор SCRIPT позволяет сохранить базу данных в текстовом формате для её переноса в другую СУБД. Сохраните базу с помощью запроса
SCRIPT 'имя файла'
Откройте полученный файл в текстовом редакторе и изучите его.