- •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.
49. Навигация по набору данных. Использование визуального компонента tdbNavigator.
TDBNavigator - навигатор, позволяющий пользователю перемещаться по записям набора данных, редактировать данные и пересылать их в базу данных.
Компонент имеет ряд кнопок, служащих для управления данными. Перечислим их названия и назначение, начиная с левой кнопки:
nbFirst |
Перемещение к первой записи |
nbPrior |
Перемещение к предыдущей записи |
nbNext |
Перемещение к следующей записи |
nbLast |
Перемещение к последней записи |
nbInsert |
вставить новую запись перед текущей |
nbDelete |
удалить текущую запись |
nbEdit |
Редактировать текущую запись |
nbPost |
послать отредактированную информацию в базу данных |
nbCancel |
отменить результаты редактирования или добавления новой записи |
nbRefresh |
очистить буфер, связанный с набором данных |
Лучше всего подходит для работы с отдельной записью или полем. По умолчанию все кнопки видимы. Видимость кнопок определяется свойством VisibleButton:TButtonSet. МетодButtonClick(Index:TNavigateButton) служит для имитации нажатия кнопок, заданных параметромIndex. СвойствоHuntsсоздает подсказку для каждой кнопки. Если использовать один компонентNavigatorдля нескольких наборов, то связывать набор иTDBNavigatorнеобходимо через свойствоDataSource.
Procedure TForm1.dbgZakazEnter(…);
begin
DBNavigator1.DataSource:=dsZakaz;
end;
50. Создание поля просмотра и вычисляемого поля. Основные проблемы и пути их решения.
Создание вычисляемого поля. После выбора Calculated необходимо создать обработчик события onCalcFields типа TDataSetNotifyEvents, в котором данному полю присваивается требуемое значение. В выражении имени вычисляемого поля могут входить другие поля, переменные и константы. Событие onCalcFields генерируется каждый раз при считывании записи из таблицы и при изменении значения вычисляемого поля, если свойство AutoCalcFields установлено в true.
Пример. Необходимо вычислить сумму заказа, когда в таблице параметры заказа необходимо умножить значение полей количество и цена.
Procedure TForm1.Param_ZakazCalcFields(…);
begin
Param_Zakaz.Value:=Param_ZakazKolichestvo.Value*Param_ZakazCena.Value;
end;
Создание поля просмотра. Нужно, если надо использовать значение из аналогичного поля из другого набора данных. Как и при создании вычисляемого поля, необходимо определить общие свойства этого поля и на панели FieldsType поставить флаг около значения LookUp. Затем станет доступна панель LookUpDefinition, где необходимо выполнить настройки поля KeyFields – поля, где содержится список, построенный на основании значения поля LookUpKeys; DataSet – поле, в которое заносится имя таблицы; ResultField – поле, содержащее имя вновь создаваемого поля.
51. Разработка отчетов с помощью средства Quick Report.
Центральным компонентом для построения отчетов является компонент TQuickRep. он определяет поведение отчета в целом и с помощью него создаются составные части отчета. КомпонентTQRBand– заготовка для расположения данных, заголовков и в основном он строится из компонентов, входящих вTQRBand. Этот компонент позволяет создать область заголовка отчета, заголовка страницы, заголовка группы, область названия столбцов отчета, область детальных данных для отображения данных нижнего уровня детализации. Позволяет создавать подвал группы, страницы и отчета.
TQRGroupиспользуется для группировки данных в отчете.
TQRLabel– размещает текстовые строки.
TQRDBText– выводит в отчет текстовые поля набора данных.
Для разработки отчета достаточно присутствия двух компонентов: TQuickRepиTQRBand.TQuickRepразмещает на форме сетку отчета, в которой в дальнейшем размещаются составные части отчета с помощьюTQRBand. Для работы по созданию отчета уTQRBandнадо установить свойства:
DataSet– указывает набор данных, на основе которого будет создаваться отчет, но если необходимо вывести информацию из нескольких таблиц БД, ее объединяют в один набор данных с помощью компонентаTQuery. Информацию из нескольких наборов данных можно включить в отчет, если они связаны отношением главный-подчиненный, тогда в качестве набора данных указывается главный, а ссылка на подчиненный осуществляется в компонентеTQRSubDetail.
Если в отчет включается информация из несвязанных наборов данных, тогда необходимо составлять набор из группы других отчетов.
Свойство Bands– составное, объекты свойства имеют логический тип.
Заголовок столбцов можно установить с помощью значения HasColumnHeader. Детализацию информации определяют черезHasDetail.HasPageFouter– позволяет создать подвал страницы.HasPageHeader– позволяет создать заголовок страницы.HasSummary– подвал отчета.HasType- заголовок отчета.
Свойство Frame– определяет параметры рамки отчета.
Свойство Page– определяет параметры страницы отчета.
Для формирования имени отчета необходимо использовать свойство ReportTitle. Для отображения различных частей отчета используется компонентTQRBand, на котором можно разместить такие объекты какTQRTable,TQRTextи др.
Основные свойства компонента: заголовок отчета, заголовок страницы, через Detailможно настроить информацию из набора данных. Она выводится всякий раз при переходе на новую запись.
Для работы с отчетом необходимо произвести предварительный просмотр отчета для его оценки, для этого можно использовать обработчик события onActiveформы:
Procedure TForm1.FormActivate(…);
begin
QuickRep1.Preview;
end;
Для закрытия используется:
Procedure TForm1.QuickRep1.AfterPreview(…);
begin
Form1.Close;
end;