- •1. Основные понятия: база данных (бд), банк данных (БнД), субд.
- •2. Компоненты БнД
- •IИнфологическое моделирование как результат разработки модели по
- •IiДаталогическое проектирование
- •IiiФизическое проектирование
- •IvЭтап определения подсхем
- •5. Инфологическое моделирование предметной области. Состав инфологической модели (илм)
- •6. Описание объектов и их свойств. Разновидности свойств объектов
- •7. Описание связи между объектами. Типы (степени) связи, классы принадлежности.
- •9.Описание сложных объектов. Составные, обобщенные, агрегированные объекты
- •Разновидности сложных объектов
- •10. Даталогическое проектирование бд: цель и этапы даталогического проектирования. Определение состава бд.
- •11. Разновидности даталогических моделей (длм)
- •12.Основные понятия реляционных бд (рбд): кортеж, домен, отношение, степень отношения, мощность отношения, первичный и внешний ключи.
- •13. Индексация файлов (таблиц) в бд. Индексные файлы и индексные ключи.
- •14. Метод проектирования рбд на основе илм (правила 1-12).
- •15. Пример проектирования рбд: создание илм и переход к длм.
- •1. Описание объектов и связей между ними.
- •2. Лингвистические отношения
- •16 Сравнение однотабличной и многотабличной баз данных.
- •17 Операции Реляционной Алгебры.
- •19 Правила записи оператораSelect.
- •20 ПредложениеSelect
- •21, 22 ПредложениеWhere
- •23 Составные условия поиска. Таблицы истинности.
- •26 Многотабличные запросы на чтение.
- •27 Псевдонимы таблиц, самосоединение таблиц.
- •28 Агрегатные функции языкаSql.
- •29. Запросы с группировкой и ограничения на них.
- •Примеры.
- •Ограничение на запросы с группировкой.
- •Ограничение на список возвращаемых столбцов.
- •30. Условия поиска групп и ограничения на эти условия.
- •Ограничения на условия поиска групп
- •31. Вложенный запрос и его особенности. Пример.
- •32. Внешние ссылки и связанные подзапросы. Пример.
- •Процедура выполнения запроса, в составе которого имеется связанный подзапрос.
- •33. Условия поиска с вложенным запросом.
- •34. Внесение изменений в бд: добавление, удаление и обновление данных.
- •InsertintOимя таблицы, в которую добавляется строка
- •Обновление существующих данных
- •35. Задание и изменение структуры бд: операторыCreatetable,droptable,altertable.
- •2. Удаление таблицы. Ненужные таблицы можно удалить из бд посредством оператора drop table.
- •3. Изменение определения таблицы.
- •36. Создание и удаление индексов операторамиCreate/dropindex. Индексы.
- •37. Создание представлений операторомCreateview.
33. Условия поиска с вложенным запросом.
1) Сравнение с результатом вложенного запроса.
2) Проверка на принадлежность результатам вложенного запроса.
3) Проверка на существование результатов вложенного запроса.
4) Многократное сравнение.
1) Сравнение с результатом вложенного запроса.
=
<> >= <= < ...
2) Проверка на принадлежность результатам вложенного запроса.
SELECT * FROM FLAT WHERE ADR NOT IN (SELECT ADR FROM TPHONE).
3) Проверка на существование результатов вложенного запроса.
SELECT *FROM PERSON
WHERE EXISTS (SELECT ID FROM HAVE_D, PROVIT
WHERE PROVIT.ID = HAVE_D.ID
AND MONEYS > 100
AND PERSON.NOM = HAVE_D.NOM ), где PERSON.NOM – внешняя ссылка
4
=
<> >= <= < ...
При наличии слова ANYпроверяемое выражение(значение) поочередно сравнивается с каждым значением, содержащемся в столбце, который сформирован вложенным запросом. Если какое-либо из этих сравнений дает результатTRUE, то проверкаANY возвращает результатTRUE. Еcли все сравнения ложные, то проверкаANYвозвращает значениеFALSE.
Проверка ALLпоочередно сравнивается с каждым значением, содержащимся в столбце, который сформирован вложенным запросом. Если все значения в результате сравнения дают значениеTRUE, то проверкаALLвозвращаетTRUE, если хотя бы 1 проверка будет ложной, тоALLвозвращаетFALSE.
34. Внесение изменений в бд: добавление, удаление и обновление данных.
Добавление новых элементов.
Наименьшей единицей информации, которую можно добавить в базу данных, является одна строка.
Существует 2 способа добавления новых строк:
однострочный оператор INSERT, включающий в таблицу 1 строку
многострочный оператор INSERT, обеспечивающий извлечение строк из одной базы данных (таблицы) в другую таблицу.
1
InsertintOимя таблицы, в которую добавляется строка
)
INSERTINTOFLATVALUES(‘Зеленоград, 8.12.04 1101-12’, 40, 3, ‘Н’)- вставляет строку в таблицуFLAT.
При добавлении новой строки в таблицу всем столбцам, имена которых отсутствуют в списке оператора INSERT, СУБД автоматически присваивает нулевое значение, либо значение, заданное по умолчанию при описании структуры таблицы.
Списки значений и столбцов должны содержать одинаковое число элементов, а тип данных каждого значения должен соответствовать типу соответствующего столбца.
2) Многострочный оператор
Он добавляет в целевую таблицу 1 или несколько строк. Источником новых строк является запрос на чтение, содержащейся внутри оператора INSERT.
INSERT INTO PERSON(FIO, RDATE, POL,SUMD, ADR)
SELECT ‘Алов Наум Наумович’, ’01-JAN-1970’, ‘М’, SUMD, ‘Зеленоград, 1001 - 51’
FROMPERSON
WHERENOM= 16.
При отсутствии строки под номером 16, СУБД выдаст сообщение об ошибке, т.к. невозможно совершить преобразование пустой строки.
Удаление существующих данных
Наименьшей единицей информации, которую можно удалить из БД является 1 строка. Для удаления строк из 1-й таблицы используется оператор DELETE.
DELETEFROM– имя_таблицы -----------------------------------------
| |
WHERE– условие_поиска
В операторе DELETEпредложениеFROMсодержит имя таблицы, из которой будут браться данные.
DELETE FROM TPHONE WHERE ADR = ‘Зеленоград, 1001-45’
Удалятся все строки с жителями, проживавшими по адресу «Зеленоград, 101-45».
Если предложение WHEREотсутствует, то и заданной таблицы удаляются все строки.