Реферат: Классификация приложений для работы с базами данных - текст реферата. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Реферат

Классификация приложений для работы с базами данных

Банк рефератов / Программирование

Рубрики  Рубрики реферат банка

закрыть
Категория: Реферат
Язык реферата: Русский
Дата добавления:   
 
Скачать
Microsoft Word, 382 kb, скачать бесплатно
Заказать
Узнать стоимость написания уникального реферата

Узнайте стоимость написания уникальной работы

Классификация приложенийдля работы с базами данных. Традиционно такие приложения делятся на локальные приложения и приложения в архи тектуре клиент /сервер , которые всвою очередь подразделяются на клиентические и серверные состовляющие Локальными называются прогр аммы , расп оложенные на одном компьютере с базой дан ных.При этом база данных управляется сравните льно маломощной СУБД , а язык SQL не является оп ределяющим при создании запросов иобмене данн ыми.Иногда база данных может распологатся на фиксированном сетевом диске в локально й сети. Программа называется соответствующей архитек туре клиент /сервер , если она имеет мощный серве БД , отвечающий за обработку поступа ющих запросов и передачу результата клиентам. В качестве СУБД используются мощные промышлен ные серверы , дл я создания запросов и управления данными используется SQL .Также обязательной состовляющей частью должны быть клиентические приложения , обеспечивающий отображение данных и интерфейс с конечным пользователем.Клиентичес кое ПО чаще всего распологается на удале нных рабочих местах , в сетях , требующи х отдельного администрирования. По мере развития локальных и глобальн ых компьютерных коммуникаций , распространение пер сональных компьютеров такая классификация стала утрачивать актуальность. Одноврименно с усложнениемр ешаемых за дач усложнялись и совершенствовались программы для работы с БД.Появились деления на од нопользовательские и многопользовательские локальные СУБД , соответсвенно локальные программы стал и делиться на однопользовательские и сетевые. Возникла дополнит е льная классификация клиентических приложений на "слабые " ("тонкие ") и "сильные " ("толстые "), появились разнообразные способы связи между клиентом и сервером , алгоритмы обслуживания очередей клиентов и способы управления транзакциями. Согласно новой классиф икации все приложения для работы с базами данных дел ятся на группы в зависимости от числа уровней обработки данных. Те программы которые раньше называлисьлок альными (независимо от способа связи с СУБ Д ), чаще всего сейчас входят в число од ноуровневых прилож ений , так как обработка данных в них ведется в единственном месте . Клиент /серверные приложения стали дели тся на двухуровневые (классический клиент /сер вер ) и трехуровневые (клиент /сервер с ПО промежуточного слоя ). С точки зрения Delphi при учоте уровней обр аботки данных из расмотрения выпал пр оцессор БД и ВДЕ , который берет на себ я большую часть низкоуровневой обработки данн ых и установку соединения между СУБД и приложением . НО эта классификатция подразумивае тразделения на уровни только создоваемой разр абот ч иком логики обработки данных , без учета стандартных используемых механизмов . Поэтому в документации по Delphi двухуровневые про граммы (с учетом уровня обработки ВДЕ ) час то называются одноуровневыми приложениями , основн ыми на ВДЕ. Терминология Реляционная б аза данных -база данн ых , в которойвсе данные представленны в ви де прямоугольных таблиц , а все операции на д базой данных сводятся к монипулятциям с о строками и столбцами таблиц . При разрабо тке приложений для работы с базами данных наиболее часто решаемая р а зработ чиками программа-это получение по некоторому запросу из базы данных и отображение на экране определенного множества значений . Иногда это множество полностью соответствует содерж имому какой-либо таблицы , но чаще это част ь таблицы илиобъединение запис е й нескольких таблиц , переданное в приложение в результате выполнения запроса , будем называт ь набором данных. Объединение-это логическое отношение между двумя таблицами на основе внешнего ключа. Первичный ключь-поле или группа полей , обеспечивающих уникальн ость каждой записи в таблице. Внешний ключ-поле или група полей , кот орые не совпадают спервичным ключом и исп ользуется для объединения с другими таблицами . Словарь данных-специализованная база данных , используемая в приложениях Delphi для хронения наборов атрибутов . Также в него могут входить и структуры баз данных целиком . Словарь данных не может хранить данные об об ъектах окружающего мира. Набор атрибутов-структура , которая содержит информацию о свойствах поля (его типе , р азмере и т.д .), а также об особен нос тях визуализации данного поля. В приложениях Delphi набор может быть получен не только в результате выполнения запроса SQL , но и простым открытием таблицы компонентом T Table (с фильтром или без не го ).Следует отметить что любое обращение к БД ВДЕ , котор ые трансформируют любые виды требований на наборы данных в с обственные запросы . Проце ссор б аз дан ных Borland Database Engine ( ВДЕ ) 1. Арх итектура ВДЕ является важнейшей состовляющей часть ю механизма доступа к данным реализованного в Delphi . Архитектура ВДЕ основана на драйвер ах которые обеспечивают обмен данными с к онкретными СУБД . Ядро процессора БД состовляе т совокупность динамических библиотек , содержащих механизмы обмена данными , управления запрсами , поде ржки национальных языков и т.д . Назначение все х динамических библиотек представленно в таблице 1. В состав ВДЕ включены стандартные дра йверы , обеспечивающие доступ к СУБД Paradox , dBase , Foxpro и текстовым файлом . Помимо этого в ВДЕ имеется простой механизм подк лючения любых драйверов ОДБС (например , M icrosoft Access ) т создание на их о снове пакетов ОДВС. Доступ к данным серверов SQL обеспечивает отдел ьная система драйверов- SQL Links . С их помощью в Delphi можно разра батывать приложения для серверов Dracle 8, Sybase , ДВ 2 и , естественно , Interbase . Эта о собенность архитектуры ВДЕ о беспечивает ряд существенных преимуществ. 1.Р еальное разделение програмного кода и механиз м доступа к данным . Причем сам доступ также осуществляется на нескольких уровнях-ВДЕ , драйвера , сервера БД . Приложение Delphi для работы с БД можно настроить на использования с любой СУБД , для которой имеется сос тветствующий драйвер , буквально за несколько минут . При этом перекомпиляция самой програмы не требуется . Плата за такую великолепную переносимость - скорость обмена данными через В Д Е и драйверы несколько мен ьше чем напрямую между приложением и СУБД. 2.Разделение драйверов и выдиление в спецальную группу драйверов для серверов SQL позволило гораздо полнее использовать функциональные воз можности серверов БД , а применение единого API сня ло остроту проблемы интерпритации процесс а выполнения транзакций разными серверами. 3.ВДЕ идеально подходит для создания приложений для архитектуры клиент /сервер , т ак какобеспечивает сследующие функции : - об работка запросов вдиалоговом режиме ; - представ ление через ВДЕ вызовов операционной системы ; - модифицируемые запро сы ; - поддержка хронимых процедур ; - управление регистрацией пользователя . Таблица 1. Ядро процессора баз данных В ДЕ 5 Имя файла Назначение DBClient . dll Динамическ ая библиотека , от вечающая за работу клиентской части приложени я IDPROV . dll Динамическая библиотека , отвечающая за работу серверной части приложения IDAPI 32. dll Базовая динамическая библиот ека ВДЕ BLW 32. dll Динамическая библиотека, обеспечивающая поддержку драйверов национальных языков IDBAT 32. dll Дин . б-ка , с функциями меж табличного переноса данных IDQBE 32. dll Дин . б-ка , обеспечивающая рабо ту запросов по примеру ( Query By Example ) IDSQL 32. dll Дин . б-ка , обеспеч ивающая обработку запросов SQL IDASCI 32. dll Дин . б-ка , обеспечивающая р аботу драйвера текстовых файлов IDPDX 32. dll Дин . б-ка , обеспечивающая рабо ту драйверов Paradox IDDBAS 32. dll Дин . б-ка , обеспечивающая р аботу драйвера dBase DODBS 32. dll Дин . б-ка , обеспечивающая работу драйвера сокета ODBC IDR 20009. dll Дин . б-ка , ресурсов , содержа щая сообщения об ошибках IDDAO 32. dll Дин . б-ка , обеспечивающая рабо ту драйвера Micrjsoft Access 95 и Tet Engine 3.0 IDDA 3532. dll Дин . б-ка , обеспечивающая работу драйвера Microsoft Access 97 и Tet Engine 3.5 IDDR 32. dll Дин . б-ка , для работы с репазиторием данных 2.Функционально ВДЕ содержит следующие с оставные части -Адми нистратор системных ресурсов Управл яет процессом подключения к данным-при н еобходимости устанавливает нужные драйверы , а по завершению работы автомотически освобождает занятые ресурсы . По этому ВДЕ использует ровно столько ресурсов , сколько необходимо . -Сист емаоброботки запросов Обеспе чивает выполнение запросов SQ L и QBE от приложения к любым базам данных , для которых установл ен драйвер , даже если сама СУБД не под держивает прямое использование запросов SQL - Система сортировки Являет ся запатентованной технологией и обеспечивает очень быстрый поиск по запросам SQL и через стандартные драйв еры для Paradox и dBase . - Система пакетной обработки Предст авляет собой механизм преобразования данных и з одного формата в другой при выполнении операций над целыми таблицами . Эта систем а использована в качестве основы для комп онента TBatchMove и у тилиты Data Pump , входящие в ст андартную постановку ВДЕ. -Диспет чер памяти Непоср едственно взаимодействует с ОС и обеспечивает эффективное использование выделяемой памяти . Ускоряет работу драйверов , которые для получе ния небольших фрагментов памяти обращаются к нему , а не к ОС. -Диспет чер буфета Управл яет единой для всех драйверов буфетной об ластью памяти , которую одновременно могут исп ользовать несколько драйверов . Этопозволяет сущес твенно экономить системные ресурсы . -Трансл ятор данных Обе спечивает преобразования форматов данных для различных типов БД. -КЭШ BLOB Исполь зуется для ускорения работы с данными в формате BLOB - SQL -генератор Трансл ирует запросы QBE в запросы SQL . -Сист ема ресруктиризации Обеспе чивает преобразования наборов данны х в таблицы Paradox или dBase -Сист ема поддержки драйверов SQL Повышает эффективность механизма поиска при выполнении запроса SQL - Таблица в памяти Этот механизм позволяет создовать таб лицы непосредственно в оперативной памяти . Ис пользуются для уско рения обработки больши х мосивов данных , сортировки , преобразования ф орматов данных. -Связанные курсоры МЕханизм связанных курсоров обеспечивает низкоуровневое выполнение межтабличных соединен ий . Для реализации подобных связей на уров не VSL дост аточно установить значение нескольких свойс тв. -Диспетчер конфигурации Обеспе чивает разработчику доступ к информации о конфигурации драйверов. 3. Про цесс доступа к данным из BDE . Осущестляется следующим образом (рис . 1) 1) Компонент доступа к данным приложения получае т команду на открытие наора дан ных и при помощи уноследования от предка ( T BDE Data Set ) методо в обращается к BDE с соответствующим запросом. 2) BDE выдиляет для нового пр оцесса необходимые ресурсы и , при необходимос ти , транслирует запрос в соответствии с ос обенностями драййвера запраши ваемой СУБД. 3) При обращении к локальной базе дан ных драйвер ан прямую обращается к таблиц ам ; при обращении к серверу SQL вызывается соответствующее клие нтское ПО . 4. Нас тройка BDE Для управления псевдонима ми баз данных , настройки стандартных и доп олнительных драйверов в составе BDE имеются специальная утилита- BDE A dministrator . Стандартная конфигурация BDE сохраняется в файле / DAP /. CFG . При необ ходимости текущую конфигурациюв в новом файле с расширением CFG . Рабочая область утилиты BDE Administrator представляет соб ой двухстроничный блокнот . Страница Databases соде ржит иерархическое дерево , в узлах которого распол ожены на данный момент псевдонимы БД . При выборе какого-либо псевдонима в правой ча сти панели появляется перечень параметров дра йвера , соответствующего псевдониму , которые можно настраивать в ручную. Страни ца Configuration предназначена для настройки па раметров драйверов BDE , предназначеных для обеспечения доступа к СУБД и серверам БД . Также здесь опредиляется системная конфигурация BDE , которая включает параметры числовых форматов , дат,времени . Вся информа ция здесь также структури зированна в виде иерархического дерева. При выборе в левой панелти утилиты какого-либо узла , в правой части на стро нице Definition отображается вся необходимая информация для э того объекта . Назначение параметров локальных драйверов BDE представленно в табл .2. Таблица 2.Параметры драйверов BDE для локаль ных баз данных. Пар аметр Назначение STANDART DEFOLT DRIVER Задает тип конкретного ло кального драйвера ( Paradox, dBase, FoxPro, Asc). ENABLE BCD Определяет способ представле ния вещественных чисел . При значении True такие числапр еобразуются в формат BCD (десятичные с двоичным кодиро ванием ), который позволяет округлять погрешности высших разрядов дробной части числа . Точнос ть состовляет 20 знаков после запятой . PATH У казывает путь к файлам базы данных. PARADOX NET DIR Указывает путь к файлу обеспечения сетевого доступа PDOXVSRS.NET. Дравер приложения , который работает с БД локал ьно , д олжен указывать на этот фаил , расположеный на том же компьютере . Драйвер приложения обращающийся к БД по сети , должен указы вать на подключенный сетевой диск сэтим ф айлом . VERSION Не редактируемая информация оверсии драйвера . TYPE Тип СУБД . Для Paradox имеет значение FILE только для чтени я. LANGDRIVER Опр еделяет дравер языковой поддержки. BLOCK SIZE Зад ает размер блоков дискового пространства для хранения записей , кратно 1024. FI LL FACTOR Определяет процент заполнения блока диско вого пространства при хранении индексов , по умолчанию 95%. LEVEL З адает формат временной таблицы впамяти : 3- совместим с Paradox 3.5 иниже 4-Paradox 4.0 5-Paradox 5.0 7-Paradox STRICTINTEGRTY Определяет возможность исп ользования приложения на базе Paradox 4.0 более позних таблиц с ссылочной целосностью . При значе нии TRUE ис пользование разрешается , но возникает риск на рушения целосности данных. DBASE VERSION Нередактируемая информация о версии драйвера. TYPE Тип СУБД . Для dBASE имеет значение FILE только для чтени я. LANGDRIVER Опр еделяет драйвер языковой поддержки. LEVEL З адает формат таблиц . Значение соответству ет номеру версии СУБД. MDX BLOCK SIZE Разм ер блоков для файлов с расширением MDX, кратно 5/2 MEMO FILE BLOCK Разме р блоков для файлов с данными типа memo , кратно 5/2 SIZE FOXPRO VERSION Нередактируемая информация о версии драйвера TY PE Тип СУБД . Для FoxPro имеет значение FILE только для чтени я. LANGDRIVER Опр еделяет драйвер языковой поддержки LEVEL И меет значение 25. 5. Инт ерфейс прикладного програмирования. Любое прилож ение Delpfi, работающее с базами да нных и написанное с использованием стандартны х компонентов доступа к данным , обращается к данным и получает результат при помо щи BDE. При этом механизм доступа к данным используе т вызовы функций из API BDE. Интерфейс прик ладного програмирования Delpfi позволяет создать любые прилож ения для работы с БД с самыми разнооб разными функциями . При этом не имеет значе ния способ доступа к данным , так как BDE обеспечивает связь приложения с базой данных на у ровне драйверов и псевдони мов. НА практике не возникает необходимости создания приложения , использующуго только функц ии BDE б ез применениякомпонентов для доступа к данным VCL. Поэто мурасмотрим способ приложения , использующего вызо вы отдельных функций BDE. Для создания приложений на основе вызовов функций BDE необходимо выполнить следующие операции : 1.И нициализация BDE ( функция DbiInit). 2. Открытие объектов базыданных (функция DbiopenDatabase). 3. Определение рабочего каталога (функция Dbi Set Direktory) , если на предидущем этапе не з адан псевдоним БДю 4 .Определен ие временного каталога (функция Dbi Set Private Dir). 5.Открытие набора данных и создание курсора (функции DbiOpen Table,DbiQExec и пр .; дескриптор курсора hDBICur). 6.Заполнение структуры CUR Props, содержащий данные о ку рсоре и наборе данных (функция Dbi Get Cursor Props). 7.Выделение памяти для буфера записи . 8.Навигация по набору данных (функции Dbi Set to Begin, Dbi Set to End, Dbi Set to Cursor ипр. ) 9.Чтение необходимой зап иси (функции Dbi Get Relativ Recod, Dbi Get Next Recod, Dbi Get Recod, Dbi Get Prior Recod и пр .). 10.Чтение или обновление необходимого пол я (функции Dbi Get Field). 11.Освобождение всех ресу рсов (освобождение буфера записи , записи курсо ра , таблицы , BDE) . При использовании в программе функции из API B DE необхо димо включить в секцию uses модуль BDE . В компонентах VCL для доступа к данным (TTable, TQuery, TStored Proc) инкапсул ирован механизм взаимодействия с дина мически ми библиотеками BDE. Любой компонент для доступа к данным имеет в иерархии наследова ния класс TBDE DataSet, унаследованые методы которого используется для установления связи с базой данных через BDE. Важную роль при этом играет зарегистрированный в BDE псевдоним базы данных (сво йство компонента называется DataBaseName). Второе важнейшее с войство- Activ, имеющее тип Doolean, позволяет открыть или закрыть сеанс связи с базой данных. Визуализацию полученных даных обычно выпо лняет компонент TDataSource и один или несколько компон ентов отображения данных ( Data Controls). Основная задача компонен та TData Scource- разделение набора данных на поля или группы полей и передача их по назнач ению . Он же отвечает за возврат зделанных изменений и передачу сигналов управления от пользователя в набор данных. Любой компонент отображения данных умеет визуализир овать полученные от компонента TDataSourse данн ые в соответствии с их типом , отслеживает правильность вносимых изменений и передает их в TDataScource. Таким образом , компонент TDataScource служит мостом между набором данных и пользовательс ким интерфейсом . С точки зрения разработчика приложений процес подключения набора данных н е содержит сложностей . Эту работу выполняет механизм доступа к данным , основой которого является процессор баз данных Borland Database Engine. Типы данных . Универсал ьность Delphi подразумеваютнеобходимость приме нения средств , которые бы обеспечили возможно сть работы с многими типами данных. Существует большая группа типов данных , конкретная реализация которых практически не отличается от платформы к платформе . Это, нап ример,строки , символы , целые и веществен ные числа. Есть типы данных , которые реализованны далеко не на каждой платформе . Есть , нак онец , просто универсальные типы данных , но зато СУБД , на которой этот тип реализован , очень широко распространена . В Delphi пр именен сл едующий способ работы с типами данных. Тип данных однозначно связан с конкре тным полем таблицы базы данных . Свойства о бстрактного поля инкапсилируют класс TField , который не имеет заранее определенных типа данных . О т этого класса порожденно целое симейст во классов для типизированных полей , каждый из оторых умеет обращаться со своим ти пом данных . В классе TField имеется свойство Data Type , которое отвечает за тип данных , но оно не может бы ть измерено. Практически во всех серверах БД польз ователь им еет возможность создовать собст венные типы данных . Для их использования в приложении Delphi имеется абстрактный тип данных и класс TADT Field. Абстрактный тип может в себя включать любой скалярный тип данных (числа , даты , ссылки , массивы , наборы данных ). А фтоинкриментный тип данных используется дл я получения уникального индификатора записи . Поле автоинкриментного типа для каждой новой записи автомотически увеличивает свое значен ие на единицу. Данные типа Blob ( Binary Large OBject) предстовляют собой двоечны е массивы произвольной длинн ы . В самом поле содержится только ссылка на отдельный фаил базы данных , в кото ром хронится двоичный массив . Таким образом поля типа Blob являются универсальным носителем любых данных , которые имеют сколярную и не сколярную струк туру и которое м ожно приобразовать в двоичное представление. Новой возможностью Delphi стало использование массивов .Эт от тип организует массив из данных любой структуры , за исключением таких же массив ов .Для каждого элимента массива может соз доваться собст венный объект TField . Для управления этим механизмом используется свойство SparseArays в классе TDataSet. В качестве отдельного поля в набор данных можно включить и любой другой произвольный набор данных . Для этого используется специальный тип данных и кла сс TDataSetField. Причем каждым полем из инте грированного набора данных также можно управл ять. Ссылочный тип данных также использует внешние наборы данных , но в данном случае мож но подключать и использовать только отдельные поля. Состояние набора данных В процессе функционирования набор д анных может выполнить различные операции : перемещение по записям , редактирование данных , удаление записи , и т.п . Эффективность работы и разно образие функций обеспечивает сложный механизм доступа к данным . В нем все операции объединены в группы по функциональному признаку . Для каждой группы операций BDE выполняет р яд подготовительных действий по предварительной настройке набора данных . При этом состоян ие набора данных изменяется. Итак , набор данных в любой момент времени нахо дится в некотором состоянии , т.е . подготовлен к выполнению действий ст рого определенного рода . Все состояния набора данных делятся на две группы . К перво й группе относятся состояние , в которое на бор данных переходит афтомотически , к ним относятся непродол ж ительные по времен и состояния , сопровождающее функционирование поле й набора данных (табл .3). Во вторую группу входят состояния , которым можно управлять и з приложения , например , перевод набора данных в режим редактирования (табл .4). Базов ый класс TDataSet , инкапсулирующий свойства набора данн ых , позволяет изменять состояния , а также проверять текущее состояние набора данных . Те кущее состояние набора даных передается в свойство State , имеющая вид NDataSetState. Таблица 3. Афтомотические с остояния набора данны х Кон станта состояния Описание dsNewValue В ключаются при обращении к свойству NewValue поля набора данных dsOldValue В ключается при обращении к свойству OldValue поля набора данных dsCurValue В ключается при обращении к свойству CurValue поля набора данных dsInternalCalc В ключается при расчете значений полей , для которых FindKind=frInternalCalc dsCalcFields Включается пр и выполнении метода onCalcFields dsBlockRead Включается ме ханизм ускорения перемещения по набору данных dsFilter Включается при выполнении метода onFilterRecond Таблица 4. Управляемые состояния набора д анных Константа состояния Метод Описание dsInactive Close Набор данных закрыт dsBrowse Open Данные доступны для пр осиотра , но не доступны дляредактирования dsEdit Edit Данные можно редактировать dsInsert Insert К наборам данных можно добовлять новы е записи dsSetKey SetKey Включается механизм поиска по ключу . Т акже м огут использоваться диапазоны Для управления состояния набора данных используютс я методы Open, Close, Edit, Insert. Закрытый набор данных всегда имеет не закыртое состояние dsInactiv. При открытии н абора данных переход в состояние просмотра данных dsBrowse . В этом состоянии по записям набора данных можно перемещаться ипросматрив ать их содржимое , но редактировать данные нельзя . Это основное состояние открытого набо ра данных , из него можно перейти вдругие состояния , но любое изменение состояния п роисходит чер ез просмотр данных (рис .3) После выполнения метода Edit можно изменять значения полей для текущей записи . Приперемещении на следующую запись анбор данных автомотически переходит в состояние просмотра. Метод Insert добовляет на месте текущ его курсо ра новую пустующую запись и переводит наб ор данных в состояние вставки . Припереходе надругую запись , после проверки на уникальн ость первичного ключа (если он есть ), набор данных возростает в состояние просмотра. Состояние установки ключа использует с я только в компоненте TTable рпи необходимости описка методами FindKey и FindNext, а также при использовании деапозонов ( метод SetRang) . Это состояние сохроняется до момента вызов а одного из методов поиска по ключу и ли метода обмена диапазона. Состояние п росмотра по блокам исп ользуется набором данных при реализации быстр ого перемещения по большим мосивам записей в компонентах отображения данных и без вызова обработчика события перемещения позаписям . Для реализации быстрого перемещения по н аборам данных мо ж но использовать методы Disable Controls и Enable Controls/ Объект поля Назначение класса TField, как базового класса поля , заключается в умении взаимод ействовать с компонентом отображения данных д ля обеспичения правильной визуализации данных . Например объе кт поля зранит способ выравнивания , параметры шрифта , текст заголовка и т.д. визуалиацией полей набора данных можно управлять и и другими средствами Свойства полей можно задать в соваре данных. С точки зрения дабора данных объект поля является хранилищем т екущего знач ения этого поля (а не всего столбца дан ных ). Класс TField Тесно интегрирован с компонент ами досутпа к данным. 1.Динамические и статические поля Поля могут быть динамическими и стати ческими . По умолчанию все обхекты полей яв ляются статическим и , т.е.создаются програмой автомотически после набора данных вез учас тия рпограмиста . Разработчик может создовать статистические поля.При жтом можно использовать только нео бходимые поля , а также создовать объекты д ля несуществующих полей и в дольнейшем ра ботать с ними как с реальными пол ями . Также механизм работы с постоянными п олями обеспечивает создание вычислимых полей и полей синхронного посмотра. Вычисляемые поля Существуют только во время работы программы , когда открыт набор данных . Обычно они содерж ат результаты выполне ния некоторыхопераций над несколькими другими полями. Фильтрация данных Наиболее э ффективным способом отбора запис ей в набор данных ( особе нно из больши х таблиц ) явля ется создание и выполнение соответств ующего запроса SQL. В случае , е ?сли набор дан ?ных функционирует на базе компонента Ttable испо льзуют встроенный в компонент механизм фил ьтрации данных. Текст фильтра должен содер жаться в свой стве Filter, а свойс тво Filtered включает и выключает фильтр . Пара м етры фильтра определяются свойст вом FilterOptions. Эти свойства уже присутствуют ? в базовом классе TdataSet, одна ко в нем работают только методы присв аивания значений для этих свойств . Сам механизм фильтра ?ции включен в ? класс TBDEDatSet, так как BDE произво дит фильтрацию данных для их передачи в компонент приложения. Компонент Tquery также может исполь зовать фильтры . Это позволяет решать некот орые проблемы , которые иначе требует изме нение текста запроса. При использовани ?и фильтра его ? текст трансл ?ируется BDE в син ?таксис SQL и пер едается для в ыполнения на сервер или че рез соответствующий драйвер в локальную СУ БД. Фильтры можно создавать дв умя способами : 1) при помощи свойс тва Filter; 2) для создания бол ее сложных фи льтров с прим енением средств языка программир ?о вания применяе тся метод- обработ ?чик набора да ?нных OnFilterRecord. Также фильтры можн о разделять н а статистические и динамическ ие. Статистические ф ?ильтры создаются во время разработки прило ?жения . Динамические фильтры можн о создавать и редактировать во время в ?ыполнения приложени я. При создании текста фильтра для свойства Filter используются для полей соответствующей таблицы БД , а для зада ?ния отношений между ними применяются все операторы ср авнения и лог ические операторы AND, OR, NOT. Нельзя сравниват ?ь между со бой два по ?ля. Параметры фильтр ?а определяются свойством FilterOptions, кото рый может при нимать следующие значения : foCaseInsenSitive – отключает сравне ?ние строковых значений с учетом регистра символов ; FoNoPatialCompare – отключает отбор строковых значений по заданой част и строки. Важнейшее преиму ?щество метода OnFilterRecord по сравнению со свойством Filter состоит в том , что он ? позволяет ср ?авнивать между собой поля и производить вычисления с их значениям и. Такой фильтр можно модифициро ?вать путем пр ?исвоения методу процедурной пере ?менной , содержащей ссылку на новый метод. Закладки Закладки , к ?ак инструмент работы с з ?аписями набора данных , позволяю быстро перем ещатся на нуж ную запись . Ме ханизм заплаток инкапсулирован у ?же в базовом классе TdataSet, но все основн ые методы для работы с закладками перекрыты в классе TBDEDataSet, так как именно обеспечивает их функционирование. Набор данных может содержать неограниченное число закладок , каждая из которых пред ставляет собой указатель . Заклад ?ку можно созд ?ать только дл ?я текущей зап ?иси набора да ?нных. При работе с закладками используются три ? основных мет ?ода : GetBookmark – создает новую закладку для текущей записи ; GotoBookmark – осуществляет переход к заплатке , пер еданной в пар метре ; FreeBookmark – удаляет закладку , переда н ?ную в парамет ?ре. Кроме того можно , использова ?ть метод BookmarkValid, ко торый проверяет , указывает ли закладка на реально существу ?ющую запись и ? метод CompareBookmark, кото рый позволяет сравнить между собой две закладки . В классе набор а данных имее тся свойс тво Bookmark, которое содержи ?т название те ?кущей закладки. Примечание механизм з акладок также используется в компоненте TDBGrid. Сетка имеет с войство SelecntdRows типа TbookmarkList, которое представ ?ляет свой спи ?сок закладок , указывающих на одновременно выд еленные з аписи. Индексация данн ых Важнейшей проблем ой для любой БД является достижение макси мальной производительности и ее сохранение пр и дальнейшем объемов хранимых данных . Использ ование индексов решает эту задачу. Индекс пре дставляет собой часть базы да нных , в которой содержит ?ся информация об организации данных в БД . В отлич ?ие от ключей , которые прос то идентифицируют отдельные за писи , индексы занимают дополнител ьные объемы п амяти и могут храниться ка к совместно с таблицей , так и в ви де отдельных файлов . Индексы обновляются при модификации данных . При эт ом обновление индекса может требовать зн ачительных ресурсов , поэтому есть смысл ограни чить число ин дексов для та блиц , в которы х происходит частое обновление данных. С некоторым упрощением можно ? сказать , что индекс содер жит уникальные идентификаторы з ?аписей и допо ?лнительную информац ию об организ ации данных . П оэтому если п ри выполнении запроса сервер или локально е СУБД обраща ются для отбо ра записи к индексу , то это занимает значительно меньше времени , так как ид ?ентификатор гораздо меньше самой записи . Кроме того , индекс может ускоря ть обработку за счет объед инения записей в группы п ?о сходным зна ?чениям параметров. Создание эффекти ?вного набора индексов для БД является нетривиальной за ?дачей . Каждый индекс должен с одержать только необходим ?ые поля , при этом большую роль играет их упорядочи вание. Свойства и методы для работы с и ?ндексами присутству ют только в классе VCL Delphi Ttable, так как в компоненте TQuery работа с индексами осуществлаются средствами SQL. След ова тельно , в ближайшем общем предке – кл ассе TBDE DataSet – отсутствую т возможности для использовани ?я индексов . При открытии набора данных все записи отсортированы в соответствии с первичным ключом , но только в случае , если свойство DefaultIndex имеет значен ие True. Чтобы подключить ? к набору данных вторичный ? индекс , необх ?одимо присвоить свойству IndexName назван ?ие индекса. Альтернативный с ?пособ задания индекса заключае ?тся в использ ?овании свойства IndexFieldNames, в котором задается перечен ?ь имен полей необхо димого индекса , разд еленных точкой с запятой . При этом в ? инспекторе о ?бъектов для э ?того свойства список полей для существующих ? индексов соз ?дается автоматическ и , разработчику остается только сделать выбо р . Это свойств о используется при задании индексов для т аблиц серве ров SQL. Список имен всех индексов таблицы можн о получить пр и помощи мето да GetIndexNames. Информация об индексах наб ора данных со держится в св ойстве Items класса TIndexDefs. В нем для каждого инде кса создается структура TIndexDef. Написание инд ексов ( наряду с написанием полей ) используют ?ся при создан ?ии новых табл ?иц БД . Для каждого планируе ?мого индекса перед необходимо ? создать ( или скопировать из существующего набора данны х ) соответствующее описание . Тог да при создан ии таблицы бу дут добавлены авт оматически. Диапазоны В компонен те TTable помимо фил ?ьтров имеется еще одно с ?редство отбора записей в набор данных . Группа методов позволяет на основе испол ьзования индексов отбирать в набор данных только те записи , значе ния индексированных полей которы х ( д ля теку ?щего индекса ) соответствуют ди ?апазону заданных величин . Диапазоны работа ?ют быстрее фи ?льтров . При ис ?пользовании диапазо нов набор дан ных обязательно должен находитьс ?я в состоянии ? dsSetKey. Чтобы включить диапазон , нео бходимо задать стартовое и конечн ое зна чение диапазона для ключевых полей , затем применить заданн ?ый диапазон к ? набору данны ?х . Работающий диапазон можно модифицировать . Все методы работы с д ?иапазонами использу ют те поля , которые зада ны в текущем индексе (IndexName, IndexFieldNames). Мето д Назначение SetRangeStart Переводит набор данных в режим dsSetKey д ?ля задания начальной и конечной таблицы ? диапазона SetRangeEnd ApplyRange П рименяет ди апазон к набо ру данных CancelRange отменяет диапазон Для одновременно ?го задания ве ?рхней и нижне ?й границы мож ?но использовать SetRange. Кака граница будет у диапазона – отк ?рытая или зак ?рытая , определяет свойство KeyExclusive.
1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Неловко, когда приходишь домой вечером, а в интернете ничего нового, потому что все уже посмотрел на работе
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

Обратите внимание, реферат по программированию "Классификация приложений для работы с базами данных", также как и все другие рефераты, курсовые, дипломные и другие работы вы можете скачать бесплатно.

Смотрите также:


Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2016
Рейтинг@Mail.ru