TObject); begin
RvProjectl.Execute; end;
10.После этого необходимо запустить приложение на выпол
нение и нажать кнопку Buttonl на форме. На экране появится диалоговое окно Output Options. В нем нужно оставить без изменения опцию Preview, которая выбрана по умолчанию, и нажать кнопку ОК для отображения отчета.
Результирующий вид отчета в режиме просмотра приведен на рис. 14.8.
Контрольні питання
1. Надайте характеристику компоненту звіт
2. Охарактеризуйте сторінки QReport
САМОСТІЙНА РОБОТА СТУДЕНТА
ЗМІСТОВИЙ МОДУЛЬ 6: ПРОГРАМУВАННЯ З ГРАФАМИ
ТЕМА 6.7: НАВІГАЦІЯ ПО НАБОРУ ДАНИХ. МОВА SQL. СТВОРЕННЯ ДОВІДКОВОЇ СИСТЕМИ
Самостійне заняття №43 –Компонент Query
План заняття
1. Характеристика методів компонентів Query
2. Порівняльна характеристика компонентів Query та Table
В качестве набора данных, который обеспечивает возможность создания и применения SQL-запросов, на данном занятии будет рассматриваться только компонент Quer.
Скорость доступа к локальным БД у компонента Query меньше, чем у компонента Table. Однако, вместе с тем компонент
Query предоставляет ряд существенных удобств при операциях с
таблицами БД, таких, как отбор данных по сложным критериям сортировка, группировка записей, одновременное отражение данных из нескольких таблиц и т.д.
В общем случае пользователь не имеет возможности вручную изменять информацию, передаваемую компонентом Query. Для осуществления изменений хранящейся в БД информации формируется специальные запросы, причем произведенные изменения тут будут автоматически отображаться, а необходимо повторно осуществить выборку данных. Только при выполнении ряда ограничений возможно создание так называемых "живых" запросов, которые позволят производить изменения вручную и затем автоматически их отображать. Однако, вообще говоря, такие "живые" запросы применяются довольно редко.
На первый взгляд может показаться, что компонент Query обладает существенными недостатками. Однако в действительности они не столь значительны и с легкостью компенсируются теми дополнительными возможностями и удобствами, которые предоставляют SQL-запросы.
Многие свойства компонента Query аналогичны одноименным свойствам компонента Table, поэтому они не будут рассматриваться повторно. Здесь имеет смысл упомянуть только о некоторых специфических свойствах компонента Query.
Свойство Active (тип Boolean) определяет активность компонента Query. Если свойство имеет значение True, то данный компонент содержит набор данных, основанный на выполнении SQL-запроса, определяемого свойством SQL. Если же свойство Active равно False, то набор данных пуст.
Свойство Constrained (тип Boolean), установленное в True, указывает на то, что в изменяемом наборе данных на записи, вводимые или изменяемые пользователем, накладываются ограничения секции WHERE оператора SELECT.
Свойство DataSource (тип TDataSource) содержит ссылку на источник данных DataSource, используемый для формирования параметрического запроса.
Свойство Local (тип Boolean) имеет значение True, если компонент Query работает с локальной или файл-серверной БД.
Свойство ParamCheck (тип Boolean) обеспечивает автоматическое обновление списка параметров при изменении запроса на этапе выполнения программы, если имеет значение True.
Свойство Params [Index: Word] (тип TParams) содержит список параметров, передаваемых в SQL-запрос. Данное свойство имеет смысл только при создании параметрических запросов.
Свойство Prepared (тип Boolean) имеет значение True, если запрос подготовлен к выполнению посредством вызова метода Prepare.
Свойство RequestLive (тип Boolean) позволяет изменять записи набора данных и обеспечивает автоматическое отображение этих изменений, если установлено в True. По умолчанию данному свойству присвоено значение False, то есть набор данных Query запрещено модифицировать. Для этого набора данных имеется возможность модификации, которая определяется содержанием SQL-запроса. В случае, когда с помощью запроса набор данных формируется на основе нескольких таблиц, его нельзя модифицировать вне зависимости от значения свойства RequestLive.
Свойство RowsAffected (тип Integer) содержит количество записей, которые были изменены или удалены в результате выполнения запроса.
Свойство SQL (тип TStrings) содержит текст SQL-запроса. Текст статического SQL-запроса можно вводить и изменять при помощи специального редактора, который вызывается при выборе данного свойства в окне Инспектора объектов. Общий вид указанного редактора показан на рис. 15.1.
Свойство State (тип TDataSetState) аналогично одноименному свойству компонента Table и определяет состояние, в котором находится набор данных Query. Данный компонент может находиться в одном из состояний, описанных для компонента Table, кроме одного исключения. Набор данных Query не переходит в режим dsSetKey, так как отбор записей производится средствами языка SQL.
Свойство Text (тип PChar) содержит текст SQL-запроса, который был в действительности передан BDE. Исходный текст запроса может быть изменен программным образом, поэтому со держимое данного свойства может отличаться от содержимого свойства SQL компонента Query.
Свойство UniDirectional (тип Boolean), установленное в True, приводит к тому, что указатель текущей записи набора данных, может перемещаться только вперед. Такие наборы данных обрабатываются быстрее и занимают меньше памяти.
Рассмотрим наиболее важные методы компонента Query.
Метод Open позволяет открыть набор данных. Этот метод используется для выполнения SQL-запроса, построенного на основе оператора SELECT и осуществляющего выборку записей из набора данных. Кроме выполнения запроса, метод Open дает возможность просмотреть содержимое набора данных, полученного в результате.
Метод ExecSQL применяется только для выполнения SQL-запроса. Этот метод не открывает набор данных и используется при работе с запросами, осуществляющими создание и удаление таблиц и индексов, изменение структуры таблиц, а также добавление, удаление и редактирование записей таблиц БД.
Метод Close закрывает набор данных. Этот метод необходимо вызывать перед любым изменением набора данных, а также перед динамическим изменением текста SQL-запроса.
Структурированный язык запросов (SQL) предназначен исключительно для работы с таблицами БД. Данный язык не имеет средств, позволяющих реализовать циклы, ветвления, переходы, ввод/вывод и т.п. Поэтому язык SQL сам по себе обычно не используется, а включается в состав других средств.
Полное и подробное описание языка SQL могло бы занять, вероятно, несколько увесистых томов, однако даже краткое описание наиболее важных операторов и функций данного языка поможет читателю научиться создавать запросы достаточно высокого уровня. Особое внимание при дальнейшем изложении будет уделено оператору SELECT, с помощью которого осуществляется выбор данных из таблиц БД.
Контрольні питання
1. Характеристика методів компонентів Query
2. Порівняльна характеристика компонентів Query та Table
АУДИТОРНЕ ЗАНЯТТЯ
ЗМІСТОВИЙ МОДУЛЬ 6: ПРОГРАМУВАННЯ З ГРАФАМИ
ТЕМА 6.7: НАВІГАЦІЯ ПО НАБОРУ ДАНИХ. МОВА SQL. СТВОРЕННЯ ДОВІДКОВОЇ СИСТЕМИ
Лекція №60 –Робота з таблицями та індексами
План заняття
1. Характеристика SQL запитів
2. Характеристика оператора CREATE TABLE
3. Характеристика оператора DROP TABLE
SQL позволяет создавать, удалять и изменять структуру таблиц, а также создавать и удалять индексы.
Создание таблиц осуществляется с помощью оператора CREATE TABLE, имеющего такое описание:
CREATE TABLE Имя_таблиці (Имя_поля Тип_данных,
Имя_поля Тип_дашшх
[PRIMARY KEY (Список_полей)])
Обязательно должно быть задано имя таблицы, а также имя и тип хотя бы одного поля. Для таблиц в формате Paradox также должен быть определен первичный ключ. С этой целью дополнительно указывается описатель PRIMARY KEY, после которого в скобках перечисляется список полей, составляющих первичный ключ. Ключевые поля должны располагаться в начале списка полей создаваемой таблицы.
Файлы таблицы будут размещены в каталоге БД, на который ссылается псевдоним БД, указанный в свойстве Database компонента Query. На самом деле в операторе CREATE TABLE указывается не имя таблицы, а имя главного файла таблицы, что допустимо, так как эти имена совпадают. Тип таблицы определяется на основе указанного расширения имени файла: DB - для таблицы в формате Paradox (данное расширение принимается по умолчанию), DBF - для таблиц формата dBASE и т.д.
Соответствие между типами данных языка SQL и типами данных таблиц Paradox отражено в табл. 15.1.
В результате выполнения данного запроса будет создана таблица people. db(формат Paradox), которая содержит шесть полей с указанными именами и типом данных. Первичный ключ строится на основе первого поля Nom_j?ass.
Для удаления таблицы используется оператор DROP TABLE.Он имеет такой синтаксис:
DROP TABLE Имя_>габлицы
Пример удаления таблицы показан ниже:
Дата добавления: 2014-12-01; просмотров: 1057;