- •Билет1: Напишите, как вы понимаете контроль целостности связей. Опишите действие контроля целостности при манипулировании данными в таблицах на примере связи 1:м.
- •Ввод новых записей.
- •Опишите основные характеристики таблицы базы данных, проектируемой в приложении DataBase Desktop.
- •Билет3 Перечислите основные функции системы управления базами данных и охарактеризуйте их.
- •Управление данными во внешней памяти;
- •Управление буферами оперативной памяти;
- •Управление транзакциями;
- •Ведение журнала изменений в бд;
- •Обеспечение целостности и безопасности бд.
- •Опишите методы поиска записей по индексированному (FindKey, FindNearest) и не индексированному (Locate) полю. Опишите процесс фильтрации записей.
- •Поддержка языков бд.
- •Раскройте сущность понятия «модель представления данных». Перечислите виды моделей данных. Опишите иерархическую и сетевую модель данных.
- •Перечислите и охарактеризуйте основные виды связей реляционной базы данных. Приведите примеры. Перечислите достоинства связывания таблиц.
- •Перечислите виды соединений с использованием оператора join. Опишите процесс соединения строк таблиц при помощи оператора join. Охарактеризуйте внутреннее и перекрестное соединение.
- •Билет 6
- •Охарактеризуйте внешнее соединение с использованием оператора join и три его формы (левое, правое и полное внешнее соединение). Приведите примеры.
- •Дайте характеристику базовым объектам ado (Connection, Recordset, Command, Parameter, Field, Error и Property).
- •Билет 9
- •Опишите процесс создания, изменения и удаления таблицы при помощи операторов языка определения данных (ddl).
- •Билет 10
- •Назовите и охарактеризуйте типы ключей которые есть в реляционных базах данных. Перечислите цели, для которых используют ключи.
- •Билет11
- •Охарактеризуйте типовую организацию системы управления базами данных.
- •Классификация запросов. Назовите этапы создания приложения для вывода данных из таблицы с помощью статического запроса. Программное использование компонента Query.
- •Билет12
- •Назовите виды классификаций информационной системы, баз данных и систем управления базами данных. Приведите примеры.
- •Объединение. Назовите правила использования оператора union, его синтаксис. Чем отличается union от union all. Приведите примеры использования оператора union. Билет13
- •Создание параметрических запросов.
- •Билет 14
- •Изложите основные особенности технологии bde при работе с базами данных в Delphi. Перечислите типы полей, которые могут использоваться в таблицах базы данных типа paradox.
- •Типы полей субд Paradox
- •Билет 15
- •Раскройте сущность понятия «модель представления данных». Перечислите виды моделей данных. Опишите реляционную и постреляционную модель данных.
- •Опишите функции преобразования типов данных: cast, convert; и функции агрегирования. Приведите примеры.
- •Билет 16
- •Вложенный подзапрос. Перечислите и дайте характеристику видам вложенных подзапросов. Приведите примеры. Использование операторов any, all с операторами сравнения.
- •Билет 17
- •Опишите функции преобразования символов в строке (lower, upper, initcap), строковые функции (lpad, ltrim, substr, instr, length и др.), функции работы с числами. Приведите примеры.
- •Билет 18
- •Перечислите и охарактеризуйте способы обращения к полю. Опишите процесс создания вычисляемых полей и полей выбора данных и для чего они предназначены.
- •Билет 19
- •Раскройте суть понятия «отчет базы данных». Охарактеризуйте типы отчетов. Опишите создание отчета в Delphi по технологии qReports. (tqrLabel, tqrdbText, tqrExpr, tqrSysData, tqrdbImage, tqrShape).
- •Билет 20
- •Перечислите и охарактеризуйте команды, предназначенные для модификации данных: вставка, обновление, удаление. Приведите примеры.
- •Особенности клиент-серверной архитектуры. Напишите предназначение и достоинства сервера InterBase.
- •Билет 21
- •Опишите назначение ключевых слов group by, having, order by оператора select. Приведите примеры использования указанных ключевых слов.
- •Билет22
- •Классификация запросов. Назовите этапы создания приложения для вывода данных из таблицы с помощью статического запроса. Программное использование компонента Query.
- •Опишите функции преобразования типов данных: cast, convert; и функции агрегирования. Приведите примеры.
- •Билет 24
- •1. Перечислите и охарактеризуйте способы обращения к полю. Опишите процесс создания вычисляемых полей и полей выбора данных и для чего они предназначены.
- •- ResultField - поле набора данных - источника, возвращаемого в качестве результата. Необходимо следить, чтобы тип вновь создаваемого поля и поля результата совпадали.
- •2. Триггеры и хранимые процедуры mssqlServer(MySql).
- •Билет27 Опишите назначение ключевых слов group by, having, order by оператора select. Приведите примеры использования указанных ключевых слов.
- •Особенности клиент-серверной архитектуры. Напишите предназначение и достоинства сервера MySql.
- •Билет 28 Назовите и охарактеризуйте типы ключей которые есть в реляционных базах данных. Перечислите цели, для которых используют ключи.
- •Билет 29 Вложенный подзапрос. Перечислите и дайте характеристику видам вложенных подзапросов. Приведите примеры. Использование операторов any, all с операторами сравнения.
- •Раскройте суть понятия «отчет базы данных». Охарактеризуйте типы отчетов. Опишите создание отчета в Delphi по технологии qReports. (tqrLabel, tqrdbText, tqrExpr, tqrSysData, tqrdbImage, tqrShape).
- •Простейшее приложение для работы с базой данных. Связь Master - Detail между наборами данных.
Дайте характеристику базовым объектам ado (Connection, Recordset, Command, Parameter, Field, Error и Property).
ы Базовых объектов семь: Connection, Recordset, Command, Parameter, Field, Error и Property. Компоненты ADO в палитре компонентов Delphi представляют собой надстройки над базовыми объектами, экспонируя большинство их свойств, методов и событий в привычном для Delphi виде.
Базовые объекты обычно сопровождаются коллекциями связанных с ними объекты. Например, с Connection может быть связан один или несколько объектов Еrror, фиксирующих ошибки установления связи. С Recordset - набор объектов Field, каждый из которых определяет единственное поле результирующего набора данных. С Command - один или несколько объектов Parameter, конкретизирующих выполнение метода Execute этого объекта и т.д. В связи с этим говорят об основных (Connection, Recordset, Command) и вспомогательных (Error, Field, Parameter, Property) объектах ADO.
Объект Connection обеспечивает создание подключения к источнику данных и эквивалентен текущему сетевому соединению с сервером. Объект Connection предоставляет возможность настройки соединения перед его открытием, установки базы данных по умолчанию, установки и разрыва соединения с источником данных, задания настроек и выполнения команды с помощью метода Execute (Выполняет запрос, оператор SQL, хранимую процедуру или любую другую команду, доступную провайдеру.). Кроме того, объект Connection обеспечивает механизм транзакций. На него может ссылаться произвольное количество объектов Command и Recordset. В этом случае Connection управляет транзакциями этих объектов. С объектом связан набор объектов Error, в котором фиксируются все ошибки, связанные с работой Connection.
Объект Recordset представляет собой текущий набор данных. Он может быть получен только после выполнения метода Execute какого-либо объекта Command. С объектом автоматически связывается набор объектов Field, в которых описываются все поля НД. Recordset способен хранить нужные записи, перемещаться по ним, добавлять, уничтожать и редактировать записи как в обычном режиме (при одновременном изменении физических ТБД), так и в пакетном режиме (т.е. при кэшировании данных). При создании объекта автоматически создается и связанный с ним курсор, обеспечивающий просмотр, редактирование и изменение записей.
С помощью объекта Command пользователь может выполнить над данными любую SQL-команду. С ним может быть связан набор объектов Parameter, в котором описываются соответствующие параметры, необходимые для выполнения запроса. Характерной особенностью объекта является возможность асинхронного выполнения связанной с ним команды. При обнаружении ошибки с объектом связывается своя коллекция объектов Error.
Объект Parameter определяет единственный параметр, который будет использоваться при выполнении метода Execute объекта Command - его тип, размер и способ применения (входной, выходной, входной и выходной или только для чтения). При необходимости с объектом Command можно связать коллекцию объектов Parameter для указания множества параметров.
Коллекция объектов Error хранит все ошибки, связанные с работой остальных объектов и, прежде всего, Connection, Command и Recordset.
Объект Field хранит всю необходимую информацию об одном поле (столбце) НД. Поскольку обычно НД содержит несколько полей, с объектом Recordset связана коллекция объектов Field. С любым полем Field можно связать произвольную коллекцию объектов Property, определяющих индивидуальные характеристики поля.
Объект Property может быть связан с любым другим объектом ADO, кроме объектов Connection и Error. Он может хранить как статические, так и динамические свойства. Статических (т.е. заранее заданных) свойств у объекта всего четыре: Name, Type, Value, Attributes. Остальные свойства - динамически и создаются в ходе выполнения программы. В объекте Property задаются некоторые индивидуальные характеристики связанного с ним объекта ADO.
Билет8
Назовите цели проектирования базы данных. Раскройте смысл следующих понятий: декомпозиция и нормализация отношений, функциональная зависимость, полная функциональная зависимость, первая нормальная форма, вторая нормальная форма, третья нормальная форма.
Цели проектирования баз данных:
Обеспечить возможность хранения в базе данных всех необходимых данных.
Исключить избыточность данных.
Свести к минимуму количество хранимых в базе данных отношений.
Нормализовать отношения для упрощения проблем, связанных с модификацией данных.
Декомпозиция отношения – разбиение некоторого отношения на более мелкие составные части, с целью более детального изучения.
Нормализация – формальная процедура разбиения некоторой реляционной таблицы на 2 или более с целью получения такого проекта БД, в котором исключена избыточность информации. Это, кроме экономии памяти, исключает возможную противоречивость хранимых данных и создания структуры, в которой предусмотрена возможность ее будущих изменений, и влияние этих изменений на приложения, использующих информацию в БД, минимально.
В отношении R атрибут Y функционально зависит от атрибута X (X и Y могут быть составными) в том и только в том случае, если каждому значению X соответствует в точности одно значение Y. Обозначается: R.X (r) R.Y.
В отношении R атрибут Y находится в полной функциональной зависимости от составного атрибута X, если он функционально зависит от X и не зависит функционально от любого подмножества атрибута X.
Таблица находится в первой нормальной форме (1НФ) тогда и только тогда, когда ни одна из ее строк не содержит в любом своем поле более одного значения и ни одно из ее ключевых полей не пусто.
Первая нормальная форма является основой реляционной модели данных, т.е. любая таблица в базе данных автоматически находится в первой нормальной форме.
Таблица находится во второй нормальной форме (2НФ), если она удовлетворяет определению 1НФ и все ее поля, не входящие в первичный ключ, связаны полной функциональной зависимостью с первичным ключом.
Если таблица имеет простой первичный ключ, состоящий только из одного атрибута, то она автоматически находится во второй нормальной форме.
Если же первичный ключ составной, то таблица необязательно находится во второй нормальной форме. Тогда ее необходимо разделить на две или более таблиц таким образом, чтобы первичный ключ однозначно идентифицировал значение в любом поле.
Таблица находится в третьей нормальной форме (3НФ), если она удовлетворяет определению 2НФ и не одно из ее не ключевых полей не зависит функционально от любого другого не ключевого поля.
Требование третьей нормальной формы сводится к тому, чтобы все не ключевые зависели только от первичного ключа и не зависели друг от друга.
Раскройте следующие понятия: набор данных, курсор набора данных, текущая запись. Охарактеризуйте свойства и методы для навигации по набору данных программно (BOF, EOF, RecordCount, RecNo, First, Last и др.).
п Набор данных - это множество записей из одной или нескольких таблиц базы данных.
Под курсором набора данных понимают указатель текущей записи в конкретном наборе данных.
Текущая запись – это та запись, над которой в данный момент времени можно выполнять какие-либо операции (удаление, изменение, чтение значений, содержащихся в полях записи).
Пользователь может перемещаться к началу и концу набора записей, к следующей или предыдущей записи по отношению к текущей, с помощью компонента TDBNavigator и встроенных возможностей компонента TDBGrid.
В классе ТТаble содержится набор методов, позволяющих выполнять подобное перемещение указателя внутри набора данных программно.
First - метод, устанавливает курсор на первую запись набора данных и делает эту запись активной;
Last - метод, устанавливает курсор на последнюю запись набора данных и делает эту запись активной;
Next - метод, перемещает курсор на следующую запись набора данных и делает эту запись активной;
Prior - метод, перемещает курсор на предыдущую запись набора данных и делает эту запись активной;
MoveBy (n: Integer): Integer - перемещает курсор на n записей к концу набора данных (n > 0) или к началу набора (n< 0). Данная функция возвращает число записей, на которое указатель был смещен реально;
FindFisrt - переводит курсор на первую запись, удовлетворяющую фильтру, и возвращает значение True, если перемещение указателя прошло успешно;
FindLast - переводит курсор на последнюю запись, удовлетворяющую фильтру;
FindNext - переводит курсор на следующую запись, удовлетворяющую фильтру;
FindPrior - переводит курсор на предыдущую запись, удовлетворяющую фильтру.
Свойство BOF возвращает значение True, если курсор установлен на первую запись в наборе данных.
Свойство EOF возвращает значение True, если курсор установлен на последнюю запись в наборе данных.
Свойство RecordCount возвращает текущее число записей в наборе данных.
Свойство RecNo возвращает номер текущей записи в наборе данных.
Для выполнения действий от первой записи и до конца набора данных используют цикл while not EOF.
Пример:
with Table 1 do
begin
First;
while not EOF do
begin
//{Какие-либо действия}
Next;
end; // While
end; //With
