|
I. Выбор технологии
Существует огромное количество платформ для разработки баз данных - как же не заблудится в этом многообразии на чем остановиться, чтобы впоследствии не пожалеть о сделанном выборе?
В моем случае исторически так сложилось что я всю свою сознательную жизнь занимался программированием на MS Access, MS Office и логичным продолжением стало изучение MS SQL Server и веб-клиента на основе ASP и ASP.NET. Самая лучшая среда разработки - та которую лучше всего знаешь. Разумеется, важно использовать последние достижения - последние работоспособные версии программных продуктов и технологий.
Об плюсах и минусах этих технологий и пойдет речь.
Краткая характеристика формата файлов MS Access
Базы данных MS Access могут быть из одного или нескольких файлов имеющих следующие расширения:
MDB - Microsoft Data Base
файл может содержать данные и клиентскую часть
база данных может состоять из нескольких файлов MDB или MDE
MDE - Microsoft Database Executable - запускаемый модуль с заранее откомпилированным кодом,
файл может содержать данные и клиентскую часть
база данных может состоять из нескольких файлов MDE или MDB
не позволяет изменять и просматривать код
--------------------------------------------------------------------------------
работоспособные версии: 2, 97, 2000, 2002 (XP)
Проекты MS Access:
ADP - Access Data Project
ADE - Access Data project Executable - запускаемый модуль с заранее откомпилированным кодом, не позволяет изменять и просматривать код
Проекты не содержат в себе хранилища данных - они предназначены для работы с MS SQL сервером, на котором собственно и хранятся данные.
работоспособные версии: 2000 (весьма условно при наличии service pack), 2002 (XP)
Общие характеристики MS Access
Преимущества перед другими средами разработки:
Возможность быстрой и интуитивной разработки (до десятков раз быстрее разработки на визуальных языках программирования)
Разработка доступна даже новичку (Для разработки простейших решений не требуется даже владения языками программирования)
Полноценное хранилище данных, поддерживающее транзакции, индексы, типы данных, ограничения, связи.
Язык запросов SQL (различные варианты в зависимости от версии см. ниже)
Недостатки:
Для использования требуется установка MS Access из пакета MS Office или MS Access Runtime из пакета MS Office Developer
Крайне желательно для разработчика чтобы все клиенты одной системы работали с одной конкретной версией MSOffice
Характеристики разновидностей и их типовое применение
Однопользовательская База данных MS Access MDB состоит из одного файла в котором содержатся все компоненты таблицы с данными, формы, отчеты, запросы, программные модули. Такая база данных преимущественно пригодна для использования одним одновременно подключающимся пользователем для хранения частных данных.
Ее преимущество - компактность
Как правило для своих целей она обладает достаточным быстродействием.
Разработать такую базу доступно даже новичку
Недостаток - невозможность совместной работы нескольких пользователей.
Многопользовательская "Разделенная" База данных MS Access MDB состоит из одного или нескольких общих файлов с данными и индивидуальных файлов с формами , отчетами и модулями для каждого пользователя.
такие базы данных можно использовать в случае если число пользователей очень мало или интенсивность работы с данными низкая.
Преимущества:
недорогое сетевое решение
Быстрая разработка
относительная мобильность и компактность (можно легко перенести скопировав файлы)
Недостатки:
низкая надежность хранения данных (геометрически снижается при увеличении числа пользователей и при ненадежном сетевом подключении)
неудобные средства администрирования
База данных MS Access MDB, подключенная к SQL-серверу через ODBC - подключенные таблицы.
Преимущества:
полноценная сетевая БД.
Возможен быстрый переход к такому типу от предыдущих версий благодаря тому что переделки кода в этом случае практически не требуется.
По прежнему используется язык запросов Microsoft Jet SQL, позволяющий использовать пользовательские функции в SQL - запросах
Возможен поэтапный переход (часть данных может оставаться в Аксессе)
Высокая надежность хранения данных , определяемая высокой надежностью сервера
прочие серверные преимущества описанные ниже
Недостатки:
низкая скорость работы с прилинкованными таблицами
Невозможность стандартного использования всех преимуществ хранимых процедур в качестве источника данных для форм.
Проект MS Access ADP
Преимущества:
Полноценная сетевая БД
Благодаря высокой скорости разработки и мощному хранилищу - возможно моделирование сложных систем.
Благодаря широким возможностям SQL сервера и языка TSQL значительное ускорение при выполнении сложных задач (как пример: сложный отчет рассчитывался в mdb до часа - на сервере меньше секунды )
возможность удобной разработки практически всех необходимых объектов сервера в дизайнере Аксесса.
Высокая надежность хранения данных , определяемая высокой надежностью сервера
Прочие серверные преимущества описанные ниже
Недостатки:
требуется значительное переписывание кода программ при переходе от MDB
В результате того что запросы выполняются на стороне сервера - функции пользователя имеющиеся в Аксессе, которые использовались в запросах в предыдущих версиях - недоступны.
Прочие серверные преимущества:
1. Триггеры - возможность выполнения программного кода на языке TSQL по различным событиям изменений данных в таблице.
Может быть использовано для:
Создания сложных вычисляемых полей (как формула в таблицах эксела )
Контроля целостности данных (разрешение или запрет изменения значений , удаления или вставки строк в зависимости от значений других полей или значений в других таблицах )
Создания сводной таблицы по мере ввода данных в исходную
2. Формулы - Возможность создания простых автоматически вычисляемых полей при помощи задания формулы для столбца
3. Функции - Возможность создавать серверные функции, которые можно использовать в запросах ( MS SQL 2000 )
4. Сложные хранимые процедуры (объект обработки данных включающий в себя последовательность SQL запросов )
5. Полнотекстовый поиск (быстрый поиск в большом объеме данных)
| |