ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Выполнение задания на работу. 6.2.3.1 Связь приложения с базой данных6.2.3.1 Связь приложения с базой данных Непосредственно перед установлением связи приложения с базой данных, необходимо создать новый проект. Выберем категорию проекта VCLForms Apltcation (рисунок 118). Рисунок 118 – Создание проекта категории VCLForms Apltcation После открытия формы необходимо переместить на нее компонент ADOConnection с закладки dbGo палитры компонентов (рисунок 119).
Рисунок 119 – Компонент ADOConnection Компонент ADOTable имеет множество полезных свойств. Свойства отображаются в Инспекторе объектов и сгруппированы по четырем категориям: Database. Input. Linkage. Miscellaneous (рисунок 120). Рисунок 120 – Каталоги свойств компонента ADOTable Ниже приведены наиболее используемые свойства компонента ADOTable: В категории Database расположены следующие наиболее используемые свойства: - AutoCalcFields. Это свойство позволяет установить или отключить автоматический пересчет полей текущей таблицы. Если это свойство равно true, то поля пересчитываются автоматически. - CacheSize. Это свойство позволяет указать размер кэш памяти. Если в данном свойстве установить, например, число 50, то при подключении к таблице из нее будут выбраны и размещены в локальной памяти ее первые 50 строк. Такой подход упрощает доступ к данным. - CommandTimeout. Это свойство позволяет установить время ожидания выполнения команды. В случае, если команда не выполнилась, по истечении время ожидания появляется сообщение об ошибке. - ConnectionString. Это свойство указывает строку подключения приложения к базе данных. - CursorLocation. Это свойство указывает расположение курсора, который считывает данные и указывает текущую позицию в таблице базы. При условии создания удаленной или серверной базы данных курсор может находиться либо на сервере, либо на машине клиента. - CursorType. Это свойство указывает тип курсора. Здесь возможен один из следующих вариантов: - ctUnspecified - расположение курсора не указано; - ctOpenForwardOnly - курсор может двигаться только вперёд; - ctKeyset - настраиваемый курсор, при котором изменения, внесённые одним пользователем не видны остальным пользователям, также подключённым к этой таблице. Если с одной таблицей работают одновременно несколько пользователей, то при таком курсоре для отображения изменений других пользователей нужно отключиться от базы данных и подключиться к ней снова; - ctDynamic - динамический курсор, при котором изменения одного пользователя, подключенного к базе данных, видят все остальные пользователи, также подключенные к базе. - ctStatic - статический курсор, при котором изменения одного пользователя, подключенного к базе, не видны остальным пользователям, также подключенным к базе. Если курсор расположен на машине клиента, то можно использовать только статический курсор. Не все типы курсоров могут работать с определённой базой данных. - Filter. Это свойство позволяет устанавливать фильтры (отсеивать часть информации). - Filtered. Это свойство позволяет указать, является ли таблица базы данных фильтруемой. Если здесь установить False, то фильтрация будет игнорироваться. -IndexFieldNames. Это свойство позволяет указать имя индексированной колонки. Индексы в базе данных используются для сортировки данных или для установления связей между таблицами. - TableDirect. Это свойство отображает тип доступа к текущей таблице базы. Если это свойство равно true, то будет происходить прямой доступ к таблице по ее имени. Если этот параметр равен False, то будет происходить специальный SQL запрос при обращении к таблице. Поскольку не все базы данных позволяют работать через прямой доступ, свойство TableDirect по умолчанию равно False. - TableName. Это свойство отражает имя таблицы, данные из которой следует обрабатывать. - MasterSource. В этом свойстве указывается главная по отношению к текущей таблица. Применяется при рассмотрении связанных таблиц базы. В категории Input расположено свойство - ReadOnly. Если это свойство равно true, то таблицу нельзя редактировать. В этом случае данные только отображаются. Целесообразно устанавливать для тех таблиц, в которые пользователь не должен вносить изменения. В категории Linkage расположены: - Connection. Это свойство позволяет указать компонент[22], через который происходит подключение приложения к базе данных. - MasterSource. В этом свойстве указывается главная по отношению к текущей таблица. Применяется при рассмотрении связанных таблиц базы. В категории Miscellaneous расположены следующие наиболее используемые свойства: - Active. Это свойство указывает на активацию (включение в работу приложения) таблицы. Если это свойство равно true, то таблица активирована. - Name. Это свойство необходимо для указания имени таблицы в базе данных. После этого, как компонент ADOConnection был установлен на форму, необходимо настроить соединение с базой данных. Для этого следует выделить на форме компонент ADOConnection, в категории свойств Database Инспектора объектов (Object Inspector) выбрать строку ConnectionString и нажать мышью на кнопку с тремя точками (рисунок121). Рисунок 121 – Инспектор объектов. Категория Database. Строка ConnectionString После этого откроется окно Source of Connection (Источник связи). В окне Source of Connection предоставляется две возможности: 1 Использовать специальный файл (Use Data Link File); 2 Использовать строку подключения (Use Connection String). Выберем Use Connection String и нажмем кнопку Build (рисунок 122). Рисунок 122 – Окно Source of connection (Источник связи) После этого откроется окно Свойства связи с данными, где на закладке Provider перечислены все доступные ADO драйверы для доступа к базам данных. Указанные драйверы устанавливается на машину вместе с MS Office. Самым удобным и широко используемым считается драйвер Microsoft Jet 4.0 OLE DB Provider (рисунок 123). Рисунок 123 – Окно «Свойства связи с данными» После выбора драйвера необходимо нажать Далее либо перейти на закладку Подключение. Вид закладки Подключение зависит от выбранного драйвера. В рассматриваемом примере при выборе драйвера Microsoft Jet 4.0 OLE DB Provider окно Подключение будет выглядеть так, как показано на рисунке 124. Рисунок 124 – Окно Подключение при выборе драйвера Microsoft Jet 4.0 OLE DB Provider
В этом окне необходимо ввести имя базы данных. Чтобы легче было выбрать нужный файл, следует щёлкнуть по кнопке с тремя точками справа от строки ввода. При выборе файла путь к базе данных буден указан автоматически (рисунок 125). Целесообразно, чтобы файл базы хранился в одной директории с запускными файлами приложения, в противном случае при изменении расположения файла с базой данных подключение будет невозможным. Помимо указания пути к файлу, содержащему базу данных, можно заполнить поля Пользователь и Пароль. Если пароль не нужен, в поле Пустой пароль следует поставить галочку (рисунок 125). После того как окно Подключение заполнено, необходимо нажать кнопку Проверить подключение (рисунок 125). Рисунок 125 – Заполненное окно «Подключение» Если информация указана верно, появиться сообщение, показанное на рисунке 126. Рисунок 126 – Сообщение о результатах подключения После успешной связи базы данных и приложения следует закрыть все окна, нажав на кнопки Ок. Поскольку в окне Подключение пароль при обращении к базе данных указан не был, то для того чтобы при каждом обращении к базе данных не загружалось окно ввода пароля, необходимо отключить такое свойство компонента ADOConnection, как LoginPrompt. Для этой цели в окне Инспектора объектов в категории свойств Database в строке LoginPrompt следует указать False (рисунок 127). Если пароль был указан, то в строке LoginPrompt Инспектора объектов должно быть указано True. Рисунок 127 – Отключение окна ввода пароля при обращении к базе данных Чтобы активировать созданную связь приложения и базы данных, необходимо в категории свойств Database в строке Connected Инспектора объектов установить True (рисунок 128). Рисунок 128 – Активация связи приложения и базы данных Если в строке Connected Инспектора объектов будет установлено False, созданная ранее связь не будет активирована. На этом соединение приложения и базы данных считается законченным. 6.2.3.2 Обеспечение доступа к таблицам базы данных Для обеспечения доступа к таблицам базы данных необходимо переместить на форму компонент ADOTable с закладки dbGo палитры компонентов (рисунок129). Рисунок 129 – Компонент ADOTable Можно изменить имя объекта ADOTable, указав в строке Name Инспектора объектов вместо ADOTable1 (рисунок 130,а) имя таблицы базы данных, которой этот объект соответствует, в данном случае Sved_o_rab[23] (таблица Сведения о работниках) (рисунок 130, б).
а б Рисунок 130 – Присваивание имени компоненту ADOTable Компонент ADOTable также содержит свойство ConnectionString, настройка которого вовсе необязательна при перемещении на форму компонента ADOConnection. Чтобы установить связь с соответствующей таблицей базы данных можно в строке Connection Инспектора объектов установить единственный существующий там пункт ADOConnection1 (рисунок 131). После этого заполнять свойство ConnectionString компонента ADOTable уже не требуется. Рисунок 131 – Инспектор объектов. Категория Lincage. Строка Connection Теперь в свойстве TableName Инспектора объектов нужно выбрать имя соответствующей таблицы, в данном случае Сведения о работниках (рисунок 132). Рисунок 132 – Инспектор объектов. Категория Database. Строка TableName На этом соединение с таблицей закончено. Для активации работы следует в строке свойства Active указать True (рисунок 133). Рисунок 133 – Инспектор объектов. Категория Miscellaneous. Строка Active Поскольку база данных Органайзер состоит из пяти таблиц, компонент ADOTable со всеми необходимыми указаниями свойств должен быть установлен на форму пять раз (рисунок134). Рисунок 134 – Пять компонентов ADOTable 6.2.3.3 Отображение данных из таблиц базы Для отображения данных из таблиц (таблицы) базы данных необходимо установить на форму компонент DataSource с закладки Data Access палитры компонентов (рисунок 135). Рисунок 135 – Компонент DataSource с закладки Data Access палитры компонентов На рисунке 136 представлена форма с установленным на нее компонентом DataSource. Рисунок 136 – Форма с установленным на нее компонентом DataSource После этого компоненту DataSource надо указать, какую именно таблицу он должен отображать. Для этого в свойстве DataSet Инспектора объектов нужно из выпадающего списка выбрать соответствующую таблицу (рисунок 137).
Рисунок 137 – Выбор таблицы для отображения ее данных в приложении Поскольку в рассматриваемом примере необходимо, чтобы были отображены данные всех пяти таблиц базы, компонент DataSource с указанием названий таблиц устанавливают на форму пять раз (рисунок 138). Рисунок 138 – Пять компонентов ADOSource 6.2.3.4 Визуализация данных из таблиц базы Самый простой способ визуализировать таблицу – установить на форму компонент DBGrid с закладки Data Control палитры компонентов (рисунок 139). Это компонент представляет собой сетку, которая может отображать данные в виде таблицы. В этом же компоненте можно добавлять, удалять и редактировать строки таблиц базы. На рисунке 140 показана форма с вынесенным на нее компонентом DBGrid.
Рисунок 139 – Компонент DBGrid закладки Data Control палитры компонентов Рисунок 140 – Форма с вынесенным на нее компонентом DBGrid После вынесения компонента DBGrid на форму необходимо связать компонент сетки с компонентом отображения таблицы. Для этого в свойстве DataSuorce компонента DBGrid нужно указать ранее созданный компонент DataSource1(отображение таблицы Сведения о работниках) (рисунок 141). Рисунок 141 – Связь компонент сетки с компонентом отображения таблицы После установления связи компонент сетки с компонентом отображения таблицы данные таблицы визуализируются. На рисунке 142 визуализированы данные таблицы Сведения о работниках. Рисунок 142 – Визуализация таблицы Сведения о работниках Поскольку в базе данных имеются пять таблиц, следует компонент DBGrid разместить на форме пять раз (рисунок 143). Рисунок 143 – Пять компонентов DBGrid Следует отметить, что при запуске проекта компоненты ADOConnection, ADOTable, DataSource будут не видны. Поэтому компоненты DBGrid расположены поверх перечисленных компонентов. Если визуализация данных таблиц не требуется, то компонент DBGrid устанавливать на форму не следует. Контрольные вопросы 1 Что такое технология ADO? 2 Что такое Палитра компонентов? Какие на ней существую закладки и компоненты? 3 Как осуществить связь базы данных с приложением по технологии ADO? 4 Перечислите наиболее используемые свойства компонента ADOTable. 5 Какой драйвер является наиболее распространенным для обеспечения доступа к базам данных? 6 Каким образом можно обеспечить доступ к таблицам базы данных? 7 Каким образом в приложении можно отобразить данные из таблиц базы? 8 Каким образом можно обеспечить визуализацию данных из таблиц базы? Не нашли, что искали? Воспользуйтесь поиском:
|