Связь с таблицей MS Access. Аннотация: На этой лекции мы поговорим о механизмах доступа к данным BDE и ADO, обсудим их плюсы и минусы. Создадим базу данных с помощью программы MS Access. Затем создадим приложение, которое работает с этой базой данных, используя механизм ADO. С самого появления технологии баз данных программисты испытывали потребность в механизмах доступа к этим самым данным. Различные компании по- своему пытались предоставить им такую возможность. Например, для работы с таблицами типа d. Base была создана Система Управления Базами Данных ( СУБД ) Clipper. Для времен операционной системы MS- DOS - превосходное решение. Однако Clipper не мог работать ни с какими другими типами таблиц. И чем больше типов данных появлялось, тем острее вставала необходимость разработать универсальный инструмент доступа, который мог бы работать с любым типом данных. Механизм доступа к данным - это программный инструмент, позволяющий получить доступ к базе данных и ее таблицам. Как правило, это драйвер в виде *. ПК разработчика (и клиента), и который используется программой для связи с БД. Сравнение BDE и ADOBorland Database Engine (BDE) - первая такая разработка фирмы Borland. Этот механизм доступа к данным позволяет обращаться к локальным и файл- серверным форматам баз данных d. Base, Fox. Pro и Paradox, к различным серверам SQL и ко многим другим источникам данных, доступ которых поддерживался при помощи драйверов ODBC. Например, с помощью BDE можно напрямую работать с табличными файлами MS Excel. Увы, механизм доступа BDE признается устаревшим даже самой компанией Borland. В данный момент многие инструменты Delphi являются кросс - платформенными, то есть, программы с небольшими доработками можно переносить на другие операционные системы. Корпорация. Borland выпустила новую среду быстрой разработки программ - Kylix, на которой создаются приложения для операционных систем семейства Linux. Часто говорят, что Kylix - это Delphi для Linux. Так и есть - если вы умеете программировать на Delphi, сумеете и на Kylix. Большинство инструментов Delphi были унаследованы Kylix, но, увы, не BDE. Дальнейшее развитие этого механизма доступа к данным корпорацией Borland прекращено. Тем не менее, хоронить его рано. Многие программисты до сих пор используют данный инструмент в разработке приложений для небольших компаний. В общем случае, определение Data Access Object описывает его как прослойку между БД и системой. DAO абстрагирует сущности системы и делает их отображение на БД, определяет общие методы использования соединения, его получение, закрытие и (или). Data Transfer Object (DTO) — один из шаблонов проектирования, используется для передачи данных между подсистемами приложения. Data Transfer Object, в отличие от business object или data access object.
Да что там говорить, китайская компания Huawei, разрабатывающая современнейшие электронные АТС как для городских, так и для мобильных телефонов, до сих пор использует BDE для доступа к настройкам и статистическим данным этих АТС! Кроме того, BDE имеет множество простых и удобных возможностей для программиста, таких например, как создание таблиц программно. Удобство работы с BDE трудно переоценить, однако нельзя не сказать и о минусах. Основной минус - распространение приложений. Если ваше приложение использует для доступа к данным компоненты BDE, то и у клиента, который будет пользоваться вашей программой, должен быть установлен BDE. Причем если вы использовали алиасы (псевдонимы базы данных), то настройка на эти же алиасы должна быть и у клиента. Впрочем, создание инсталляционного пакета при помощи стандартной утилиты Install Shield Express снимает эту проблему. Эта утилита позволяет включать настроенный механизм BDE в состав инсталляционного пакета вашей программы. Конечно, за это приходится расплачиваться большими размерами инсталляционного файла. Другой минус касается не только BDE, но и любого другого универсального механизма доступа к данным. Универсальность такого механизма подразумевает сложность его реализации. Программисту предоставляется уже готовый инструмент, с которым удобно работать, однако этот инструмент достаточно . Больше к этим темам мы возвращаться не будем, хотя изредка будем обращаться к BDE, чтобы продемонстрировать те или иные возможности, отсутствующие в других механизмах доступа к данным, или отличающиеся от них. Поэтому если вы пропустили этот курс, то хотя бы бегло просмотрите работу с BDE в лекциях 2. Помочь в этом может, например, утилита OLE/COM Object Viewer, которая An Error object contains details about data access errors, each of which. Active. X Data Object (ADO) - это механизм доступа к данным, разработанный корпорацией Microsoft. Если точнее, то ADO - это надстройка над технологией OLE DB, посредством которой можно связываться с различными данными приложений Microsoft. В середине 1. 99. COM, и корпорация. Microsoft в связи с этим объявила о постепенном переходе от старой технологии ODBC к новой OLE DB. Однако технология OLE DB достаточно сложная, использование этой технологии происходит на системном уровне и требует от программиста немало знаний и труда. Кроме того, технология OLE DB очень чувствительна к ошибкам, и . Чтобы облегчить программистам жизнь, корпорация. Microsoft разработала дополнительный прикладной уровень. ADO, который мы будем изучать на этом курсе. По своим возможностям ADO напоминает BDE, хотя конечно, является более мощным инструментом. Компания Borland разработала набор компонентов для доступа к ADO и первоначально назвала его ADOExpress. Однако корпорация. Microsoft упорно противится использованию своих обозначений в продуктах сторонних разработчиков, поэтому, начиная с Delphi 6, этот набор компонентов стал именоваться db. Go. Эти компоненты вы можете увидеть на вкладке ADOпалитры компонентов. Технология ADO, как и BDE, независима от конкретного сервера БД, имеет поддержку как локальных баз данных различных типов, так и некоторых клиент- серверных БД. Плюсов у этой технологии много. Драйверы, разработанные корпорацией Microsoft для собственных нужд, более надежные, чем драйверы сторонних производителей. Поэтому если вам требуется работать с базами данных MS Access или для архитектуры клиент- сервер использовать MS SQL Server, то использование ADO будет наиболее предпочтительным. Кроме того, имеется плюс и в вопросе распространения программ - во всех современных Windows встроены драйверы ADO. Другими словами, ваша программа будет работать на любом ПК, где установлен Windows. Как ни странно, но основной минус так же заключается в вопросе распространения программ. Корпорация. Microsoft поступает довольно хитро. Каждые пару- тройку лет появляются новые версии Windows. Рядовому пользователю обычно нет нужды переходить на свежую ОС, тем более что каждая новая система становится все требовательней к ресурсам ПК. Для того чтобы заставить пользователя перейти на новую версию, корпорация. Microsoft обязательно вводит несколько новых стандартов или технологий, несовместимых со старыми. А для старых версий доработок не предусматривается. Вот и приходится бедному пользователю скрепя зубы тратиться на новые версии операционной системы и пакета MS Office. Поэтому при использовании технологии ADO приходится думать о том, какая версия Windows стоит у конечного пользователя, будет ли ваша программа работать у него на ПК. Технология ADO на самом деле является частью Microsoft Data Access Components (MDAC). Компания Microsoft распространяет MDAC как отдельный продукт, к счастью, бесплатный. При этом поддерживается только самая последняя версия MDAC. Например, в состав Delphi 7 входит MDAC 2. При распространении собственных программ следует учитывать, что у клиента с большей долей вероятности уже установлена эта самая MDAC, причем самой последней версии. Однако если он пользуется старыми версиями Windows (Win. ME, NT), то вам потребуется позаботиться об установке MDAC на его компьютер. Если же у него установлена ОС Win. Win. XP или более новая, то MDAC у него уже есть, и вам беспокоиться не о чем. Еще один серьезный минус ADO в том, что он для подключения к БД использует довольно медлительную технологию COM. Если ваша база данных будет содержать несколько тысяч записей, то скорость работы с таблицами может стать в сотни раз более медленной, чем если бы вы использовали BDE! На современных ПК, имеющих частоту процессора до 2 ГГц и выше, эти замедления могут быть и незаметны, но работа с огромной базой данных на более медленных ПК превратится в сплошное ожидание. Основными компонентами, с которыми нам предстоит работать, являются TADOConnection (для подключения к БД), TADOTable (аналог TTable из BDE ), TADOQuery (аналог TQuery из BDE, для выполнения запросов и получения набора данных) и TADOData. Set (предназначенный для набора данных, полученных через SQL- запрос). Создание базы данных MS Access. Базы данных. MS Access имеют много плюсов, часто программисты предпочитают использовать именно их. Во- первых, база данных. MS Access - это один файл. Сколько бы таблиц и индексов она не содержала, все это хранится в одном единственном файле. А значит, такую базу данных легче обслуживать - переносить на новое место, делать резервные копии и так далее. Еще один плюс - имена полей в такой БД можно давать русскими буквами. Лучше всего изучать новый материал на практике. Для примера создадим базу данных для отдела кадров какого- нибудь предприятия. Какие данные на сотрудника нам понадобятся? Прежде всего, фамилия, имя и отчество. Затем укажем пол (мужской или женский), семейное положение (холост или женат/замужем), количество детей. Также понадобятся дата рождения и дата поступления на работу. Военнообязанный сотрудник, или нет. Телефоны, по которым можно связаться с сотрудником в любое время. Должность сотрудника и отдел (если есть), в котором он числится. А также его домашний адрес. При этом учитываем, что сотрудник не обязательно является жителем города, где он работает. А вдруг он приехал на заработки из другого города? Или даже из другой страны? Следовательно, придется вводить и страну, и город - вдруг потребуется делать отчет по сотрудникам, прописанным в Украине, например? Вот сколько данных нужно будет вводить для отдела кадров! А ведь мы еще немного упростили их. Стаж работы подразделяется на общий и непрерывный. Эти данные учитываются при расчете больничных листов. Но для учебной базы данных такими деталями можно пренебречь. Итак, первым делом оптимизируем данные, исходя из правил трех нормальных форм. В результате получаем целых четыре таблицы: Рис. Она имеет релятивные связи с другими таблицами. В подчиненных таблицах имеется поле . Причем ключевых полей в дочерних таблицах не будет.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. Archives
April 2017
Categories |