- •Управление распределёнными данными: технологии управления, блокировка ресурсов, сериализуемые транзакции.
- •Привилегии на доступ к таблице, полю таблицы, к хранимой процедуре. Отмена привилегий.
- •Модели бд. Понятие локальной сети, сервера, рабочей станции. Отличия и преимущества удалённых баз данных от локальных.
- •Назначение и виды отчётов. Мастер отчётов и Конструктор отчётов. Настройка печати и печать отчётов. Компоненты формирования отчётов.
- •Создайте запрос, позволяющий получить список служебных телефонов всех работников предприятия со всей необходимой информацией. Билет №8
- •Архитектура приложений баз данных.
- •Понятие и назначение транзакции. Старт, фиксация, откат и отмена транзакции. Компоненты для работы с транзакциями.
- •Создайте хранимую процедуру, определяющую список заказчиков из города, название которого задаётся параметром, из тестовой таблицы Customers. Билет №10
- •Создание запросов с использованием агрегатных функций. Группировка.
- •Соединение с сервером и базой данных в InterBase.
- •Напишите триггер, который при удалении названия фирмы в родительской таблице «Фирмы», удаляет подчинённые записи в дочерней таблице «Заказы». Билет №11
- •Основные функции процессора баз данных bde, стандарт odbc.
- •Понятие и назначение хранимой процедуры, триггера и генератора. Команды по созданию, редактированию и удалению хранимой процедуры, триггера
- •Создайте хранимую процедуру, определяющую страну с самым большим населением по тестовой таблице Country. Билет №12
- •Концепция баз данных. Понятия баз данных, субд. Архитектура субд.
- •Полный и сокращённый форматы оператора добавления, редактирования и удаления данных. Методы выполнения операторов управления данных.
- •Создайте хранимую процедуру, позволяющую вводить новую запись в таблицу. Билет №13
- •Утилиты для работы с удаленными бд в Delphi. Программа Server Manager Windows isql, sql Explorer. Просмотры — Views.
- •Проектирование серверной части приложения баз данных.
- •Показать работу с параметризированным запросом в ibQuery на примере таблиц из тестовой бд employee.Gdb. Билет №14
- •Назначение и структура файлов базы данных. Команды по созданию и перемещению файла базы данных, по определению структуры и администрированию базы данных.
- •Показать работу с основными компонентами InterBase: ibDataBase, ibDataSet, ibTransaction, ibQuery на примере тестовой базы данных. Билет №15
- •Назначение и структура файлов базы данных. Команды по созданию и перемещению файла базы данных, по определению структуры и администрированию базы данных.
- •Параметризированные запросы.
- •Создайте автоинкрементные поля для таблиц «Товары», «Поставщики», используя генераторы и триггеры.
- •Запросы на создание, изменение, удаление таблиц, индексов.
- •2.1.3. Ручная настройка Query
- •1. Создание запросов на изменение данных
- •10.2 Создание баз данных с помощью Database Desktop
- •10.2.1 Создание новой таблицы
- •10.2.2 Задание полей
- •10.3.2 Создание и просмотр псевдонимов баз данных в Database Desktop
- •10.10 Приложения с несколькими связанными таблицами
- •10.10.1 Связь головной и вспомогательной таблиц
- •10.10.2 Поля просмотра (lookup fields)
Билет №2
-
Управление распределёнными данными: технологии управления, блокировка ресурсов, сериализуемые транзакции.
Один из способов предотвратить проблемы при параллельной обработке — запретить совместное использование ресурсов путем блокировки данных, которые считываются для обновления. В этом случае, если блок записей или одна запись «заняты» какой-либо транзакцией, то другая транзакция не сможет их изменить.
Блокировки могут налагаться либо автоматически, по требованию СУБД, либо по запросу пользователя. Некоторые СУБД предусматривают блокировку ресурсов на уровне строк, другие — на уровне страницы, третьи — на уровне таблицы, четвертые — на уровне всей, базы данных.
Когда две или более транзакции обрабатываются параллельно, их результаты, сохраняемые в базе данных, должны быть логически согласованы с результатами, которые получились бы, если бы данные транзакции обрабатывались каким-нибудь последовательным способом. Такая схема обработки параллельных транзакций называется сериализуемой (serializable).
-
Привилегии на доступ к таблице, полю таблицы, к хранимой процедуре. Отмена привилегий.
Безопасность в языке SQL контролируется на уровне таблицы с помощью
привилегий доступа – списка операций, которые пользователю разрешено выполнять над данной таблицей или над представлением, использующим данную таблицу.
Привилегии доступа можно предоставлять к таблице, представлению, роли, процедуре или триггеру. Кроме того, можно предоставлять пользователям или хранимым процедурам право на выполнение другой хранимой процедуры. В общем случае могут быть реализованы следующие операции по передаче привилегий:
- передача пользователям, триггерам, хранимым процедурам или представлениям: SELECT, INSERT, UPDATE, DELETE и REFERENCES привилегий доступа к таблице или представлению;
- передача для роли: SELECT, INSERT, UPDATE, DELETE и REFERENCES привилегий доступа к таблице или представлению;
- передача пользователям права использовать привилегии, переданные конкретной роли, т.е. при подключении к БД обладать привилегиями, определенными соответствующей ролью в БД;
- передача пользователям, триггерам, хранимым процедурам или представлениям привилегии EXECUTE на выполнение хранимой процедуры.
Для использования хранимой процедуры пользователь должен иметь привилегию на ее выполнение. Формат оператора GRANT для установки привилегии на выполнение хранимой процедуры:
GRANT EXECUTE ON PROCEDURE procname TO user;
Дополнительно, хранимая процедура должна иметь привилегии на все, имеющие к ней отношение, таблицы для всех выполняемых операций. Например, установка привилегии на выборку для хранимой процедуры имеет следующий формат:
GRANT SELECT ON tablename TO PROCEDURE procname;
ОТМЕНА ПРИВИЛЕГИЙ
Также как ANSI предоставляет команду CREATE TABLE, чтобы создать таблицу, а DROP TABLE - чтобы от нее избавиться, так и команда GRANT позволяет вам давать привилегии пользователям, не предоставляя способа отобрать их обратно.
Удаление привилегии выполняется командой REVOKE, фактически - стандартному средству с достаточно понятной формой записи. Синтаксис команды REVOKE похож на GRANT, но имеет обратный смысл.
-
Создайте запрос, позволяющий вычислить: количество отделов, являющихся подразделениями отдела 100 (Маркетинг и продажи), их суммарный, средний, минимальный и максимальный бюджеты по таблице Department.
Билет №4