- •Билет №1
- •3. Задача.
- •5.1) Простые объекты и их свойства
- •2) Виды сущностей и их отображение в реляц модели
- •5.3) Задача
- •6 Билет.
- •1 Вопрос.
- •6 Билет 2 вопрос.
- •2. Агрегатные функции, группировка данных
- •8.1) Языковые средства субд
- •8.2) Виды связей между объектами и их отражение в даталогической модели.
- •8.3) Задача
- •2) Реляционные базы данных: достоинства и недостатки.
- •3. Задача.
- •1 Вопрос. Виды свойств и их отражение в реляционной бд.
- •2 Вопрос.
- •Проекция
- •Объединение
- •Inner join
- •Билет №15
- •1. Case -средства проектирования бд.
- •2. Табличные языки запросов. Определение полей, выводимых в ответ. Возможности
- •3. Задача.
- •Билет 16.
- •Билет№17
- •Билет 18
- •Билет 19
- •Билет 20
- •Билет №21.
- •Билет 22
- •1. Sql. Создание и использование представлений.
- •2. Стандарты sql Стандарты языка sql
- •Билет n 23.
- •3. Задача.
- •Билет 24
- •Билет 25
- •Билет 26
- •Билет 27
- •Билет №28.
8.3) Задача
select AVG(Table2.Kolv) from
(select * from
(select Postavka.KodMat, Postavka.Kolv, Cennic.NaimMat from Postavka inner join Cennic
on Postavka.KodMat=Cennic.KodMat) as Table1 where Table1.NaimMat='чугун') as Table2
Билет №9
1)
2) Построить ER-модель. Предметной областью является общеобразовательная школа.
Необходимо отразить текущую, четвертную и годовую успеваемость каждого учащегося, а также
сведения о его посещаемости
2) Реляционные базы данных: достоинства и недостатки.
Реляционная БД представляет собой совокупность схем отношений связанных друг с другом. Реляционная модель данных – позволяет представлять информацию о предметной области С помощью взаимосвязанных таблиц. В реляционных базах данных вся информация сведена в таблицы, строки и столбцы которы называются записями и полями соответственно. Эти таблицы получили название реляций. Записи в таблицах не повторяются. Их уникальность обеспечивается первичным ключом, содержащим набор полей, однозначно определяющих запись.
Достоинства реляционной модели:
Недостатки реляционной модели:
|
Билет №10
Ограничения целостности. Понятие и классификация.
Целостность - актуальность и непротиворечивость информации, ее защищенность от разрушения и несанкционированного изменения. Целостность данных - свойство базы данных, и ее обеспечение является важнейшей задачей проектирования. Она описывается набором специальных предложений, называемых ограничениями целостности. Ограничения целостности представляют собой утверждения о допустимых значениях отдельных информационных единиц и связях между ними. Эти ограничения определяются в большинстве случаев особенностями предметной Области.
При построении ER-модели в ERWin можно задавать ограничения целостности.
Обязательный атрибут
Для атрибута можно задавать свойство «Required» (обязательный). Для тех атрибутов, которые выбраны в качестве первичного ключа, это свойство является неактивным, поскольку свойство обязательности и так (по определению ключа) присуще элементам ключа. Свойство «Required» следует задать для атрибутов «Фамилия», «Имя», «Отчество» объекта СОТРУДНИК, «Наименование предмета полное» объекта ПРЕДМЕТ и некоторых других атрибутов. Задание этого свойства будет означать, что при вводе данных в БД недопустимо пустое значение соответствующего поля.
Ограничения целостности связи
При описании связи можно задать ограничения целостности связи. Для этого следует воспользоваться вкладкой RI Actions в окне редактора связей (Relationship Editor). В этой секции для каждой связи можно задать действия, которые будут выполняться при удалении (Delete), вставке (Insert) и обновлении (Update) как порожденной (Child), так и родительской (Parent) сущности.
Для каждой корректирующей операции можно выбрать действие, которое представлено в ниспадающих списках. Каждый список имеет четыре возможных значения: NONE (никакой), RESTRICT(ограничивать),
CASCADE (каскад), SET DEFAULT(значение по умолчанию).
· NONE - действие не оказывает влияния на связанные записи;
· RESTRICT - действие запрещено (при определенных условиях);
· CASCADE - действие вызывает изменения в связанных записях;
· SET DEFAULT - устанавливается значение по умолчанию для поля связи;
· SET Null - устанавливается по умолчанию значение Null для поля связи.
Триггер ссылочной целостности
Для обеспечения ссылочной целостности может быть создан особый вид триггера - триггер ссылочной целостности. По умолчанию ERWin генерирует триггеры, обеспечивающие контроль ссылочной целостности для каждой связи, определенной в ER-модели.
При генерации триггеров ERWin использует механизм шаблонов -специальных скриптов, использующих макрокоманды. Шаблоны триггеров ссылочной целостности, используемые ERWin, можно изменять, причем можно переопределить как триггеры для конкретной связи, так и шаблоны для всей модели в целом.Для редактирования триггера следует (находясь в физической модели) щелкнуть правой кнопкой мыши по таблице и выбрать во всплывающем меню пункт
SQL. Предложения GROUP BY и HAVING.
Предложение GROUP BY. Оно используется для определения групп выходных строк, к которым могут применяться те или иные агрегатные функции. Предложение GROUP BY всегда используется со встроенными агрегатными функциями. Обратное утверждение наверно. Агрегатные функции могут использоваться в предложениях SELECT, HAVING. Если агрегатные функции используются без предложения GROUP BY, то они будут применяться ко всему набору строк, удовлетворяющему условию запроса. Конструкция GROUP BY работает только на одном уровне. Нельзя разбить каждую из этих групп на группы более низкого уровня, а затем применять стандартную функцию на каждом уровне подчиненности.
Фраза GROUP BY означает логическую перекомпоновку (группировку) таблицы по указанной колонке (колонкам). Физически таблицы в базе данных не перекомпоновываются. Логика выполнения запроса при использовании GROUP BY несколько отличается от реализации обычного запроса. Фраза SELECT при использовании GROUP BY применяется к каждой группе, а не к каждой строке, как обычно.
Каждое выражение во фразе SELECT должно принимать единственное значение для группы, т.е. оно может быть либо самой колонкой, либо арифметическим выражением, включающим эту колонку, либо агрегатной функцией, которая получает в результате единственное значение для группы. Кроме того, в SELECT может быть включена константа.
Предложение HAVING. Вместе с GROUP BY может использоваться фраза HAVING, которая для групп имеет то же значение, что и фраза WHERE - для строк.
Например, запрос на выдачу списка кодов тех материалов, по которым было выполнено более чем по одной поставке, будет выглядеть следующим образом:
SELECT codmat
FROM post
GROOUP BY codmat
HAVING COUNT(*)>1;
Выражение во фразе HAVING должно принимать единственное значение для группы. Формат COUNT(*) означает подсчет всех строк таблицы.