ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 21.01.2025

Просмотров: 2277

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

8. Типы структур ис. Их характеристики, достоиства, недостатки.

2 Файл серверная архитектура.

3. Клиент серверная архитектура.

4. Многозвенная архитектура.

9. Определение реляционной модели данных, характеристика ее основных элементов.

10. Основные подходы к проектированию структур данных и проблемы определения структур данных.

12. Основная задача проектирования бд. Метод декомпозиции- классический метод нормализации отношений.

14. Формирование отношений для связи 1:м при кп обязательном для м связной сущности.

15. Формирование отношений для связи 1:м при кп необязательном для м-связной сущности.

16. Формирование отношений для связи м:м.

17. Этапы проектирования и назначение диаграммы er-экземпляров и er-типа.

18. Фильтрация записей. Фильтрация по выражению.

19. Фильтрация записей. Фильтрация по диапазону.

20. Создание приложения бд в Delphi (компоненты, обеспечивающие доступ к данным, структура и работа приложения).

21. Схема взаимодействия компонентов при проектировании бд в Delphi.

Связь этих компонентов друг с другом и с базой данных можно представить схемой приведенной ниже:

22. Основные этапы создания приложения бд в Delphi.

23. Назначение компонента tDataSource в создании бд. Основные свойства и методы компонента.

24. Назначение компонента тТablе в создании бд. Основные свойства и методы компонента.

25. Приёмы работы с набором данных(нд). Состояния набора данных. Метод State.

26. Основные методы модифицируемого набора данных(нд). Редактирование набора данных и проблемы редактирования.

27. Основные методы модифицируемого набора данных. Добавление и удаление записей и проблемы удаления.

28. Назначение компонента tdbGrid в создании бд. Основные свойства и методы компонента.

29. Навигация по набору данных. Назначение компонента tdbNavigator в создании бд. Основные свойства и методы компонента.

30. Методы поиска записей в наборе данных. Метод Locate.

31. Методы поиска записей в наборе данных. Метод Lookup.

32. Методы поиска записей в наборе данных. Методы FindKey и FindNearest(инкрементный поиск записей).

33. Отображение и редактирование данных. Классификация компонентов отображения данных.

34. Назначение компонента tQuery- Основные свойства и методы.

35. Теоретические языки запросов. Sql - структурированный язык запросов. Основные методы его использования.

36.Основные операторы языка sql. Оператор select: назначение, формат оператора.

37. Предложение where в операторе select. Формирование запроса по условию поиска и внутреннее соединение таблицы.

38. Использование оператора select для сортировки нд и устранения повторяющихся значений.

39. Использование оператора select для расчета вычисляемых столбцов и группировки записей.

40. Использование оператора select для задания сложных условий поиска (операторы and, or, not, between).

41. Использование оператора select для внешнего соединения. Формат запроса.

42. Операторы insert, delete, update. Форматы операторов и назначение.

43. Ссылочная целостность таблиц бд и механизмы ее осуществления. Понятие транзакции.

44. Типы полей данных, поддерживаемые в Delphi и их характеристики. Объявление полей и типов полей при создании приложения.

46. Использование bde Administrator при создании бд.

47. Роль индексов в субд. Определение индексов. Связывание таблиц бд.

48. Работа с визуальным компонентом tdbGrid и настройка полей таблиц.

49. Навигация по набору данных. Использование визуального компонента tdbNavigator.

50. Создание поля просмотра и вычисляемого поля. Основные проблемы и пути их решения.

51. Разработка отчетов с помощью средства Quick Report.

52. Разработка отчетов с помощью средства Rave Reports.

Постреляционная модель

Классическая реляционная модель предполагает неделимость данных, хранящихся в полях записей таблиц. Это означает, что информация в таблице представляется в первой нормальной форме. Существует ряд случаев, когда это ограничение мешает эффективной реализации приложений.      Постреляционная модель данных представляет собой расширенную реляционную модель, снимающую ограничение неделимости данных, хранящихся в записях таблиц. Постреляционная модель данных допускает многозначные поля - поля, значения которых состоят из подзначений. Набор значений многозначных полей считается самостоятельной таблицей, встроенной в основную таблицу.      На рис. 2.6 на примере информации о накладных и товарах для сравнения приведено представление одних и тех же данных с помощью реляционной (а) и постреляционной (б) моделей. Таблица INVOICES (накладные) содержит данные о номерах накладных (INVNO) и номерах покупателей (CUSTNO). В таблице INVOICE.ITEMS (накладные-товары) содержатся данные о каждой из накладных: номер накладной (INVNO), название товара (GOODS) и количество товара (QTY). Таблица INVOICES связана с таблицей INVOICE.ITEMS по полю INVNO.

Рис. 2.6. Структуры данных реляционной и постреляционной моделей

Как видно из рисунка, по сравнению с реляционной моделью в постреляционной модели данные хранятся более эффективно, а при обработке не требуется выполнять операцию соединения данных из двух таблиц. Для доказательства на рис. 2.7 приводятся примеры операторов SELECT выбора данных из всех полей базы на языке SQL для реляционной (а) и постреляционной (б) моделей.      Помимо обеспечения вложенности полей постреляционная модель поддерживает ассоциированные многозначные поля (множественные группы). Совокупность ассоциированных полей называется ассоциацией. При этом в строке первое значение одного столбца ассоциации соответствует первым значениям всех других столбцов ассоциации. Аналогичным образом связаны все вторые значения столбцов и т. д.

а) SELECT INVOICES.INVNO, CUSTNO, GOODS, QTY FROM INVOICES, INVOICE.ITEMS WHERE INVOICES.INVNO=INVOICE.1TEMS.INVNO; б) SELECT INVNO, CUSTNO, GOODS, QTY FROM INVOICES;

Рис. 2.7. Операторы SQL для реляционной и постреляционной моделей


На длину полей и количество полей в записях таблицы не накладывается требование постоянства. Это означает, что структура данных и таблиц имеют большую гибкость.      Поскольку постреляционная модель допускает хранение в таблицах ненормализованных данных, возникает проблема обеспечения целостности и непротиворечивости данных. Эта проблема решается включением в СУБД механизмов, подобных хранимым процедурам в клиент-серверных системах.      Для описания функций контроля значений в полях имеется возможность создавать процедуры (коды конверсии и коды корреляции), автоматически вызываемые до или после обращения к данным. Коды корреляции выполняются сразу после чтения данных, перед их обработкой. Коды конверсии, наоборот, выполняются после обработки данных. Достоинством постреляционной модели является возможность представления совокупности связанных реляционных таблиц одной постреляционной таблицей. Это обеспечивает высокую наглядность представления информации и повышение эффективности ее обработки. Недостатком постреляционной модели является сложность решения проблемы обеспечения целостности и непротиворечивости хранимых данных.      Рассмотренная нами постреляционная модель данных поддерживается СУБД uniVers. К числу других СУБД, основанных на постреляционной модели данных, относятся также системы Bubba и Dasdb.

  1. Обзор средств Delphi, используемых для создания, разработки и эксплуатации приложений БД.

BDE Administrator – утилита для установки псевдонимов (имен) баз данных, параметров БД и драйверов баз данных на конкретном компьютере. При работе с БД из приложения, созданного с помощью Delphi, доступ к базе данных производится по ее псевдониму. Параметры определяемой псевдонимом БД, действуют только для этой БД; параметры, установленные для драйвера БД, действуют для всех баз данных, использующих драйвер. Кроме того, можно произвести установку таких общих для всех БД параметров, как формат даты и времени, форматы представления числовых значений, используемый языковый драйвер и т.д.

Database Desktop (DBD) – средство для создания, изменения и просмотра БД. Эта утилита прежде всего ориентирована на работу с таблицами локальных СУБД, например Paradox. Можно с некоторыми ограничениями создавать и просматривать таблицы баз данных, работающих под управлением серверов: InterBase, MS SQL Server, Oracle. DBD позволяет программисту возможность сформировать запрос к БД методом QBE (Query By Example – запрос по образцу).


SQL Explorer – универсальная утилита, совмещающая многие функции BDE Administrator и DBD. С ее помощью можно создавать и просматривать псевдонимы БД, просматривать структуры и содержимое таблиц БД, формировать запросы к БД на языке SQL, создавать словари данных (шаблоны полей таблиц).

SQL Monitor – средство для трассировки выполнения SQL-запросов.

Невизуальные компоненты для работы с БД – служат для соединения приложения с таблицами БД в локальных и распределенных системах. Они расположены на странице Data Access палитры компонентов. С помощью невизуальных компонентов осуществляется подключение к базам данных, формирование запросов к ним, манипулирование таблицами.

Визуальные компоненты для работы с БД – предназначены для визуализации записей наборов данных или их отдельных полей. Эти компоненты расположены на странице Data Controls палитры компонентов. Они служат основным инструментом разработки пользовательского интерфейса доступа к данным.

Особенности программ для работы с БД.

Характерной особенностью созданных с помощью Delphi программ для работы с БД является непременное использование в них BDE (процессор реляционной базы данных Borland Database Engine, включенный в состав Delphi), которая осуществляет роль связующего моста между программой и БД.

BDE берет на себя всю низкоуровневую работы по обеспечению клиентской программы нужными ей данными, поэтому в общем случае взаимодействие программы с данными происходит следующим образом:

BDE не является частью программы. В зависимости от типа СУБД она может размещаться на машине клиента или сервера. Обычно между программой и BDE располагается слой компонентов, существенно упрощающих разработку программ.

Невизуальные компоненты осуществляют непосредственную работу с BDE, и три из них (TTable, TQuery, TStoredProc) служат наборами данных, в то время как визуальные компоненты отображают поставляемые им данные и служат для создания удобного интерфейса пользователя. Между наборами данных и визуальными компонентами обязательно располагаются компоненты TDataSource, играющие роль клапанов, открывающих или закрывающих потоки данных, которыми обмениваются источники с визуальными компонентами (см рис.).


  1. Понятие ключа (первичный, составной, внешний) и индексирования. Назначения ключа.

Поля таблицы могут определять так называемые ключи и индексы. Ключ — это комбинация нескольких полей, данные в которых однозначно определяют запись таблицы.

Ключи бывают простыми и сложными (составными). Простой ключ — это ключ, состоящий из одного поля. Сложный или составной ключ включает в себя данные нескольких полей. Данные простого ключа должны быть уникальными. Составной ключ может иметь повторы в отдельных полях, но не во всех одновременно.

Соответственно поля, по которым строится ключ, называются ключевыми полями. В каждой таблице может быть только один ключ. Ключ иногда называют первичным ключом или главным индексом.

Первичный ключ (ключ отношений, ключевой атрибут) называется атрибут отношения, однозначно идентифицирующий каждый из его кортежей. Кроме того, ключ предназначен для более быстрого выполнения запросов к базе данных. По ключевым полям организуется связь между таблицами базы данных. Сведения о ключе таблицы могут храниться как вместе с данными таблицы, так и в отдельном файле. Этот файл имеет такое же имя, что и файл таблицы, но другое расширение. Ключевой файл содержит значения ключа, которые располагаются в определенном порядке. Для каждого из значений ключа имеется уникальная ссылка, которая указывает местоположение соответствующей записи в файле таблицы.

Возможны случаи, когда отношение имеет несколько комбинаций атрибутов, однозначно определяющейся, все эти комбинации являются возможным ключом отношения, любой из них мб выбран как первичный.

Ключи используют для: исключения дублирования значений в ключевых атрибутах, упорядочения кортежей ( возрастание или убывание, либо смешанный), ускорения работы с кортежами отношения, организации связывания таблиц.

Пусть в отношении а имеется не ключевой атрибут а1, значения которого являются значением ключевого атрибута б1 в другом отношении б, тогда атрибут а1 отношения а есть внешний ключ, с помощью него устанавливается связь между отношениями.

Индекс — это комбинация нескольких полей, которые служат для быстрого доступа к необходимой информации.

Основным отличием индекса от ключа является то, что поля индекса могут определять не одну, а несколько записей. Таким образом, индекс не всегда однозначно определяет запись в таблице базы данных.


Индексы так же, как и ключи, могут быть простыми и составными. Простой индекс состоит из одного поля, а составной — из нескольких полей. Поля, по которым строится индекс, называют индексными полями. Процесс создания индекса называется индексированием таблицы.

В зависимости от используемого типа базы данных, индексы могут храниться как вместе с данными, так в отдельных файлах. Индекс используется для увеличения скорости доступа к данным, для быстрой сортировки данных таблицы, а также для поддержки других функций, которые будут рассмотрены далее.

В отличие от ключа, который является уникальным в каждой таблице, индексов в ней может быть несколько. Это в первую очередь необходимо для быстрой сортировки по нужному полю или полям. Если эти поля проиндексированы, то сортировка по ним будет выполнена значительно быстрее, чем по обычным полям. В любой момент времени можно активировать любой из индексов таблицы. Именно по активному (текущему) индексу обычно будет выполняться сортировка записей таблицы. Следует, однако, заметить, что, несмотря на наличие нескольких индексов, таблица может не иметь текущего индекса. Вообще говоря, поведение индексов и ключей зависит от типа используемой базы данных. Так, например, в таблицах Paradox ключ автоматически является главным индексом, который не имеет имени. В то же время в таблицах dBase ключ в принципе не создается, вместо него используется один из индексов. Но в общем случае ключевые поля обычно автоматически индексируются. Индексные файлы, создаваемые по ключевым полям таблицы часто называются файлами первичных индексов, для неключевых полей – вторичными ( пользовательскими).

  1. Операция связывания таблиц БД. Назначение связывания и виды связи.

Связывание таблиц на уровне приложений:

  1. Необходимо к свойству master source подчинить таблицу. Выбираем значение data source принадлежащее главной таблице в этой связи.

  2. Раскрыть редактор полей, в правой части, свойство ms откроем редактор связей, выбрать available Indexes. Data fields появится имя поля связи, а на панели master fields необходимо получить тоже самое поле.

При проектировании реальных БД информацию обычно размещают в нескольких таблицах. В реляционных СУБД для указания связей таблиц производят операцию их связывания. Многие СУБД при связывании таблиц автоматически выполняют контроль целостности вводимых в базу данных в соответствии с установленными связями. В конечном итоге это повышает достоверность хранимой в БД информации. Кроме того, установление связи между таблицами облегчает доступ к данным. Свя­зывание таблиц при выполнении таких операций как поиск просмотр, редактирование, выборка и подготовка отчетов обычно обеспечивает возможность обращения к произвольным полям связанных записей. Это уменьшает количество явных обращений к таблицам данных и число манипуляций в каждой из них.