- •Билет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 между наборами данных.
Билет11
Охарактеризуйте типовую организацию системы управления базами данных.
Организация типичной СУБД и состав ее компонентов соответствует набору функций СУБД, таких как:
управление данными во внешней памяти;
управление буферами оперативной памяти;
управление транзакциями;
журнализация и восстановление БД после сбоев;
поддержание языков БД.
обеспечение целостности и безопасности БД.
Логически в современной реляционной СУБД можно выделить наиболее внутреннюю часть - ядро СУБД (DataBase Engine), компилятор языка БД (обычно SQL), подсистему поддержки времени выполнения, набор утилит. В некоторых системах эти части выделяются явно, в других - нет, но логически такое разделение можно провести во всех СУБД.
Ядро СУБД отвечает за управление данными во внешней памяти, управление буферами оперативной памяти, управление транзакциями и журнализацию. Соответственно, можно выделить такие компоненты ядра, как менеджер данных, менеджер буферов, менеджер транзакций и менеджер журнала. Функции этих компонентов взаимосвязаны, и для обеспечения корректной работы СУБД все эти компоненты должны взаимодействовать по тщательно продуманным и проверенным протоколам. Ядро СУБД обладает собственным интерфейсом, не доступным пользователям напрямую и используемым в программах, производимых компилятором SQL (или в подсистеме поддержки выполнения таких программ) и утилитах БД. Ядро СУБД является основной резидентной частью СУБД. При использовании архитектуры "клиент-сервер" ядро является основной составляющей серверной части системы.
Основной функцией компилятора языка БД является компиляция операторов языка БД в некоторую выполняемую программу. Основной проблемой реляционных СУБД является то, что языки этих систем (а это, как правило, SQL) являются непроцедурными, т.е. в операторе такого языка специфицируется некоторое действие над БД, но эта спецификация не является процедурой, а лишь описывает в некоторой форме условия совершения желаемого действия. Поэтому компилятор должен решить, каким образом выполнять оператор языка прежде, чем произвести программу. Результатом компиляции является выполняемая программа, представляемая в некоторых системах в машинных кодах, но более часто в выполняемом внутреннем машинно-независимом коде. В последнем случае реальное выполнение оператора производится с привлечением подсистемы поддержки времени выполнения, которая представляет собой интерпретатор внутреннего языка СУБД.
В отдельные утилиты БД обычно выделяют такие процедуры, которые слишком накладно выполнять с использованием языка БД, например, загрузка и выгрузка БД, сбор статистики, глобальная проверка целостности БД и т.д. Утилиты программируются с использованием интерфейса ядра СУБД, а иногда даже с проникновением внутрь ядра.
Классификация запросов. Назовите этапы создания приложения для вывода данных из таблицы с помощью статического запроса. Программное использование компонента Query.
Классификация запросов — это разделение разных видов запросов по группам с определенными признаками.
Под термином «поисковый запрос» понимается последовательность символов (чаще слово или словосочетание), которая описывает какое-либо явление или объект и вводится пользователем в поисковую строку для получения информации об этом явлении или объекте.
По целям пользователей:
Информационные запросы — когда пользователи преследуют цель получить искомую информацию на любом сайте (погода в Хабаровске).
Навигационные запросы — когда пользователь ищет сайт или контакты конкретной компании (сайт Северсталь).
Транзакционные запросы — когда пользователь заинтересован в приобретении товаров, услуг и т.д. (купить квартиру в ЦАО Москвы).
По однозначности:
четкие. Объект поиска задан четко и недвусмысленно (например, купить дом в Самаре).
нечеткие. Формулировка может трактоваться неоднозначно (например, дома).
По длине запроса
однословные,
многословные (из двух и более слов).
По географии поиска
С географией. Объект поиска привязан к определенной стране, городу и т.д.
Без географии. Местонахождение объекта не имеет значения для пользователя или объект место в пространстве занимать не может.
С географией по умолчанию. Пользователь не задает месторасположение объекта, но подразумевает.
По частотности
Высокочастотные (ВЧ). Запросы, которые пользователи наиболее часто вводят в поисковую строку.
Среднечастотные (СЧ). Слова и фразы, популярность которых относительно высока.
Низкочастотные (НЧ). Запросы определенной тематики, наименее часто используемые посетителями.
По конкурентности
высококонкурентные запросы (ВК),
конкурентные (СК),
низкоконкурентные (НК).
По форме их построения
естественный запрос — имеет форму вопросительного предложения;
телеграфный запрос — строится без связи между словами;
запрос с операторами — расширенный поиск с применением специальных операторов;
запрос-цитата — например: «Чтобы перепрошить телефон…».
По языку
на одном языке;
на нескольких языках;
на одном языке, но с грамматическими ошибками;
из слов, имеющих в разных языках одинаковое значение
ррКомпонент Query имеет большинство свойств и методов, совпадающих с Table. Дополнительное преимущество Query – возможность формировать запросы на языке SQL. Если запрос SQL сводится к просмотру таблицы (запрос Select), то результат этого запроса (а не сама исходная таблица) помещается во временном файле на компьютере пользователя. Это таблица только для чтения и не допускает каких-либо изменений. Если же запрос связан с какими-либо изменениями содержания таблицы, то никаких временных таблиц не создается. BDE передает запрос на сервер, там он обрабатывается и в приложение возвращается информация о том, успешно ли завершена соответствующая операция. Таким образом, эффективность Query при работе в сети выше, чем у Table. Компонент Query (набор данных) помещается на форму вместе с компонентом DataSource (источник данных) и компонентами отображения данных, например,DBGrid. Основное свойство компонента Query – SQL, имеющее тип TString. Это список строк, содержащих запросы SQL. В процессе проектирования приложения необходимо сформировать в этом свойстве некоторый предварительный запрос SQL, который показал бы, с какой таблицей или таблицами будет проводится работа. Но далее во время выполнения приложения свойство SQL может формироваться программными методами, обычными для класса TString: Clear – очистка, Add – добавление строки и т.д. Свойство DataBaseName компонента Query служит для задания базы данных, с которой осуществляется связь путем выбора из выпадающего списка псевдонимов или указанием полного пути к файлу. Свойства TableName у компонента Query нет, так как таблица, с которой ведется работа, будет указываться в запросах SQL. Поэтому в свойство SQL надо занести запрос, содержащий таблицы и перечисляются параметры, если они используются в приложении. Пока такой запрос в SQL отсутствует, дальнейшая настройка Query невозможна. Если запрос, введенный в SQL , имеет вид Select * from pers при задании свойства Active=true можно сразу в процессе проектирования увидеть результаты работы этого запроса. Если работа проводится с несколькими таблицами: Select * from pers,dep Для управления отображением данных в компоненте Query, как и в компоненте Table имеется редактор полей Field Editor. Он вызывается либо двойным щелчком на компоненте Query, либо из контекстного меню и выбором пункта Fields Editor. В нем можно добавить имена получаемых полей (add), задать заголовки полей, отличающиеся от их имен, сделать поля невидимыми (visible), нередактируемыми (ReadOnly), в логических полях задать текст(например: да;нем, м;ж)., задать формат высвечивания чисел, создать вычисляемые поля, задать диапазоны значений и др.
