Категории: ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника |
Компоненты приложений, работающих с базами данныхМетодика разработки приложения для работы с БД ничем не отличается от методики создания обычной программы: к форме добавляются необходимые компоненты, устанавливаются значения свойств компонентов, разрабатываются необходимые процедуры обработки событий. Приложение работы с БД должно содержать · компоненты, обеспечивающие доступ к данным; · компоненты, обеспечивающие отображение и редактирование данных. Доступ к БД обеспечивают компоненты, значки которых находятся на вкладках BDE и Data Access палитры компонентов (рис. 2). Table Query Database DataSource Рис. 2. Компоненты панелей BDE и Data Access
Компонент Database представляет БД как единое целое, т. е. совокупность таблиц, а компонент Table – одну из таблиц БД. Компонент DataSource (источник данных) обеспечивает связь компонента отображения-редактирования данных (например, компонента DBGrid) и источника данных, в качестве которого может выступать таблица (компонент Table) или результат выполнения SQL-запроса к таблице (компонент Query). Компонент DataSource служит посредником между таблицами СУБД и экранными элементами управления. Этот компонент позволяет, во-первых, абстрагироваться от конкретной СУБД. Например, если потребуется сделать многопользовательское приложение, достаточно настроить таблицы на другую, более мощную СУБД с аналогичной схемой базы данных, способную работать в сети. Элементы управления этого не заметят, поскольку будут обращаться к источнику данных, а не к конкретным таблицам. Во-вторых, в системе Delphi 7 понятие источника данных значительно шире, чем таблица. Таким источником может служить любое виртуальное устройство, способное представлять данные в виде наборов записей. Например, записи могут генерироваться программными компонентами, исполняющимися где-то в Интернете. Компонент DataSource позволяет оперативно выбирать источник данных, использовать один и тот же компонент, например, DBGrid для отображения данных из таблицы или результата выполнения SQL-запроса к этой таблице. Механизм взаимодействия компонентов отображения-редактирования данных с данными через компонент DataSource иллюстрирует рис. 3.
Рис. 3. Взаимодействие компонентов отображения и доступа к данным
Каждая БД должна быть явно описана в программе с помощью компонента Database. Этот компонент полезен не только для сложных приложений – его можно использовать для повышения надежности некоторых операций. В простейшем случае, когда БД представляет собой одну таблицу, приложение для работы с БД должно содержать один компонент Table и один компонент DataSource. Некоторые свойства компонента Table перечислены в табл. 3. Свойства перечислены в том порядке, в котором следует устанавливать их значения после добавления компонента в форму приложения. Таблица 3
При разработке формы приложения значения свойств DatabaseName и TableName задаются путем выбора из списков. В списке DatabaseName перечислены все зарегистрированные псевдонимы, а в списке TableName – имена файлов таблиц, которые находятся в соответствующем псевдониму каталоге. Некоторые свойства компонента DataSource перечислены в табл. 4. Таблица 4
Свойство DataSet обеспечивает связь между компонентом, представляющим собой таблицу или запрос, и компонентами, предназначенными для доступа к записям. Наличие этого свойства позволяет выбирать источник данных. Например, БД может быть организована таким образом, что таблица, состоящая из большого числа записей, разделена на несколько подтаблиц, имеющих одинаковую структуру. В этом случае в приложении каждой подтаблице будет соответствовать свой компонент Table, а выбор конкретной подтаблицы можно осуществить установкой значения свойства DataSet. Компоненты, обеспечивающие просмотр и редактирование содержимого полей БД, находятся на вкладкеData Controls (рис. 4).
DBNavigator DBEdit DBImage DBCheckBox DBRichEdit DBGrid DBText DBMemo DBComboBox DBRadioGroup DBChart Рис. 4. Компоненты просмотра и редактирования полей БД Компонент DBNavigator (рис. 5) представляет собой набор кнопок, при щелчках на которых во время работы программы происходит перемещение указателя текущей записи к следующей, предыдущей, первой или последней записи БД, а также добавление к файлу данных новой записи, удаление текущей записи. Рис. 5. Компонент DBNavigator
Назначение кнопок компонента DBNavigator (слева направо): 1) nbFirst – устанавливает курсор на первую запись файла данных; 2) nbPrior – устанавливает курсор на предыдущую запись файла данных; 3) nbNext – устанавливает курсор на следующую запись файла данных; 4) nbLast – устанавливает курсор на последнюю запись файла данных; 5) nbInsert – устанавливает режим вставки новой записи; 6) nbDelete – удаляет текущую запись файла данных; 7) nbEdit – устанавливает режим редактирования текущей записи; 8) nbPost – запоминает изменения, сделанные в текущей записи; 9) nbCancel – отменяет изменения, сделанные в текущей записи; 10) nbRefresh – записывает внесенные изменения в файл. Некоторые свойства компонента DBNavigator перечислены в табл. 5.
Таблица 5
Пользователь может просматривать БД в режиме формы или в режиме таблицы. В режиме формы можно видеть только одну запись, а в режиме таблицы – несколько записей одновременно. Часто эти два режима комбинируют. Краткая информация (содержимое некоторых ключевых полей) выводится в табличной форме, а при необходимости видеть содержимое всех полей записи выполняется переключение в режим формы. Для того чтобы обеспечить просмотр БД в режиме формы, в форму приложения нужно добавить компоненты, обеспечивающие просмотр и редактирование содержимого полей записи, причем по одному компоненту для каждого поля. Компонент DBText позволяет только просматривать содержимое поля, а компоненты DBEdit и DBMemo – просматривать и редактировать. В табл. 6 перечислены некоторые свойства этих компонентов. Свойства перечислены в том порядке, в котором следует устанавливать их значения после добавления компонента в форму приложения. Таблица 6
Для обеспечения просмотра и редактирования данных в режиме таблицы в форму приложения надо добавить компонент DBGrid. Некоторые свойства компонента перечислены в табл. 7. Таблица 7
Для того чтобы задать, какая информация будет отображена в таблице во время работы программы, необходимо сначала определить источник данных для таблицы (установить значения свойства DataSource), затем – установить значения уточняющих параметров свойства Columns. Значение свойства DataSource задается в окнеинспектора объектов. Чтобы установить значение свойства Columns, надо выбрать это свойство и щелкнуть на кнопке с тремя точками. В результате открывается окно редактора колонок. Для того чтобы в компонент DBGrid добавить колонку, обеспечивающую просмотр содержимого поля записи файла данных, необходимо нажать кнопкуAdd New, находящуюся на панели инструментов окна (это единственная доступная после запуска редактора кнопка), выделить добавленный элемент и, используя инспектор объектов, установить значения свойств этой колонки (табл. 8). Свойство Columns компонента DBGrid представляет собой массив компонентов типа TColumn. Каждой колонке соответствует элемент массива (например, DBGrid1.Columns[0], DBGrid1.Columns[1] и т. д.). Устанавливая значения свойств компонентов Column, программист задает вид колонок компонента DBGrid и тем самым определяет вид всей таблицы. В простейшем случае для каждой колонки достаточно установить значение свойства FieldName, которое определяет имя поля записи, содержимое которого будет отображаться в колонке, а также значение свойства Title.Caption, определяющего заголовок колонки. Таблица 8
Существуют два способа работы с таблицами базы данных: · программный, когда значения конкретным полям задаются с помощью элементов управления Windows; · визуальный, основанный на использовании готового компонента DBGrid. Оба эти подхода широко распространены, и программисту необходимо уметь пользоваться каждым. В большинстве автономных приложений достаточно использовать второй подход, который значительно проще и не предъявляет повышенных требований к правильности ввода. Кроме того, дополнительные проверки вводимой информации можно настроить как с помощью свойств псевдополей таблицы (которые создаются с помощью редактора полей), так и с помощью свойств отдельных столбцов. Однако в серьезных приложениях приходится применять первый подход (предварительный ввод значений в поля формы). При этом совершенно необходимо проверять вводимые пользователем значения и тщательно выверять корректность их взаимосвязей, потому что небольшая ошибка в системе ввода финансовой программы способна привести к существенному искажению информации.
Демонстрационная БАЗА ДАННЫХ
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2016-08-28 lectmania.ru. Все права принадлежат авторам данных материалов. В случае нарушения авторского права напишите нам сюда... |