Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laboratornyy_praktikum_chast_2.docx
Скачиваний:
98
Добавлен:
25.02.2016
Размер:
968.87 Кб
Скачать

2 . Практические задания

Порядок выполнения работы

  1. Используя приложение, созданное в лабораторной работе спроектируйте и создайте:

- сводный отчет

- вывод таблиц с использованием группировки

- составление отчета с вычисляемым полем

- составление отчета с использованием агрегатных функций

Контрольные вопросы:

1) Какие компоненты используются при подготовке отчета

2) Изобразите схему, поясняющую состав простого отчета и его взаимосвязи с набором данных

3) Как осуществляется создание вычисляемых полей в отчете

Лабораторная работа №11 Использование запросов при проектировании приложений

Цель работы: получить практические навыки разработки и подключению запросов. Формирование навыков и умений работы с компонентами TQuery, TStoredProc.

  1. Краткие теоретические сведения

Использование одной компоненты Table позволяет работать только с одной таблицей. Поэтому, когда необходимо работать с несколькими связанными таблицами, нужно создавать соответствующее число компонент Table. В этом случае целесообразно взять компонент Query класса TQuery являющегося потомком класса TDBDataSet. Эта компонента позволяет определить набор данных на основе нескольких таблиц с помощью SQL запроса. Её также удобно применять, когда таблица БД черезмерно велика, в этом случае с помощью запроса можно ограничить набор раассматриваемых данных.

Можно создать оператор Delphi SQL при помощи компоненты Query следующим образом:

- поместить на форму объекты Query, DataSource и связать их вместе;

- с помощью свойства SQL ввести указание SQL;

- установить свойство Acive в значение True

У класса TQuery отметим следующие наиболее важные свойства, которые он добавляет к наследуемым от классов TDataSet, TBDEDataSet и TDBDataSet:

Local – определяет расположение таблиц (true – локальные таблицы, false – таблицы на SQL-сервере); свойство только для чтения.

RequestLive – свойство логического типа, определяет возможность изменять набор данных, полученный в результате выполнения запроса. Эта возможность имеется, если свойство имеет значение True и у запросов, которые основаны на одной таблице и не используют сортировку и агрегатные функции. У остальных запросов результат доступен только для чтения независимо от значения данного свойства. В этих случаях можно посмотреть свойство CanModify для того чтобы увидеть, успешен ли запрос, если же нужно откорректировать таблицу с помощью запроса SQL? То следует использовать команду SQL Update/

SQL – свойство типа Tstrings, определяет текст SQL-запроса, который используется при выполнении методов Open или ExecSQL.

Unidirectional – определяет направление перемещения курсора по набору данных, полученному в результате выполнения запроса.

UpdateMode – свойтсво типа TUpdateMode, определяет способ обновления записей из промежуточного буфера.

Следующие свойства компоненты TQuery используются в динамических SQL-запросах. Приведем некоторые из них:

DataSource – свойство типа TDataSource , определяет источник данных, значения полей которого используются как параметры для динамического запроса.

Param[Index] – свойство типа TParam, задает список элементов типа TParams, которые определяют параметры в динамическом запросе. С помощью этого свойства в редакторе значений параметров задаются начальные величины параметров. Чтобы перейти к редактору значений параметров запроса, нужно активизировать мышью значение этого свойства.

Класс TQuery добавляет к наследуемым от классов TDataSet, TBDDataSet, TDBDataSet следующие методы (некоторые из них):

ExecSQL- процедура выполняет SQL – запрос

Prepare – процедура посылает запрос в BDE для проверки синтаксиса и оптимизации. Рекомендуется выполнить для динамических запросов.

События, которые обрабатываются компонентой TQuery, полностью наследуются от класса TDataSet.

При постановке переменных связи в динамический запрос программным методом с помощью свойства Params выполняются обычно следующие шаги:

- необходимо убедиться в том, что таблица закрыта;

- подготавливается объект TQuery с помощью выдачи команды Prepare;

- свойству Params присваиваются конкретные значения;

- открывается запрос.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]