Глава 8 Проекты Microsoft Access
Одним из направлений существенного совершенствования Access, которое происходит с появлением каждой новой версии этого программного продукта, является то, что в новой версии программа превратилась в распределенную систему. Это произошло в основном за счет развития и внедрения идеологии, связанной с проектами Microsoft Access.
Проект Microsoft Access (с расширением. adp) является файлом данных Microsoft Access, обеспечивающим эффективный доступ к базам данных Microsoft SQL Server с помощью архитектуры компонентов OLE DB [9] .
Используя проект Microsoft Access, можно создавать приложения в архитектуре клиент/сервер так же легко, как приложения файлового сервера. Такое приложение в архитектуре клиент/сервер может быть традиционным решением, основанным на формах и отчетах, или решением на базе Internet, использующим страницы доступа к данным, либо сочетать в себе весь спектр возможностей. Проект Microsoft Access можно подключить к удаленной базе данных Microsoft SQL Server, локальной базе данных Microsoft SQL Server или к локальной установке Microsoft SQL Server 2000 Desktop Engine (MSDE).
Этот проект назван так потому, что содержит только программные или HTML-объекты базы данных: формы, отчеты, имена и местоположения страниц доступа к данным, макросы и модули. Объекты базы данных используются для создания приложений. В отличие от базы данных Microsoft Access проект Microsoft Access не содержит объекты, основанные на данных или на определениях данных: таблицы, представления [10] , схемы базы данных, сохраненные процедуры [11] , или определяемые пользователем функции [12] . Вместо этого перечисленные объекты базы данных хранятся в базе данных Microsoft SQL Server.
Поддерживаемые базы данных Microsoft SQL Server
Допускается подключение к одной из следующих баз данных Microsoft SQL Server:
• Microsoft SQL Server 2000 в операционных системах Microsoft Windows 2000 и Microsoft Windows 98 или более поздних версий;
• Microsoft SQL Server 2000 Desktop Engine в операционных системах Microsoft Windows 2000 и Microsoft Windows 98 или более поздних версий;
• Microsoft SQL Server 7.0 в операционных системах Microsoft Windows NT 4.0 или более поздней версии (с пакетом Microsoft Windows NT Service Pack версии 4 или более поздней) и Microsoft Windows 95 или более поздней версии;
• Microsoft Data Engine (MSDE) в Microsoft Windows NT версии 4.0 или более поздней версии и Microsoft Windows 95 или более поздней версии;
• Microsoft SQL Server 6.5 в Microsoft Windows NT 4.0 или более поздней версии (с пакетом SQL Server Service Pack 5 или более поздней версии).
...
При установке соединения с именованным сервером Microsoft SQL Server 2000 необходимо, чтобы на компьютере-клиенте была установлена версия 2.6 программного обеспечения компонентов доступа к данным Microsoft Data Access Components (MDAC). MDAC 2.6 можно установить с помощью Microsoft SQL Server 2000 Personal Desktop Edition из папки MSDE2000, находящейся на компакт-диске Microsoft Office XP.
Работа с проектом Microsoft Access
Работа с проектом Microsoft Access очень похожа на работу с базой данных Microsoft Access. Процесс создания форм, отчетов, страниц доступа к данным, макросов и модулей практически не отличается от используемого при создании базы данных Microsoft Access. Подключившись к базе данных Microsoft SQL Server, можно просматривать, создавать, изменять и удалять таблицы, представления, сохраненные процедуры, определяемые пользователем функции и схемы баз данных с помощью конструктора баз данных, конструктора таблиц, конструктора запросов, построителя запросов и текстового редактора SQL. Хотя пользовательский интерфейс для работы с этими объектами базы данных отличается от эквивалентных объектов баз данных в базе данных Microsoft Access, он настолько же прост. В проекте Microsoft Access содержится много мастеров, таких же, как в базе данных Microsoft Access, например мастер форм, мастер отчетов, мастер страниц и мастер масок ввода. Они помогают пользователю быстро создать прототипы или простые приложения, а также упрощают разработку сложных приложений.
Расширенные свойства
Если проект Microsoft Access подключен к базе данных Microsoft SQL Server 2000, то появляется возможность использования преимуществ расширенных свойств. Такие свойства сохраняют сведения о дополнительных атрибутах объектов базы данных Microsoft SQL Server, которые находятся в базе данных Microsoft SQL Server и обеспечивают в проекте Microsoft Access следующие дополнительные возможности:
• создание подстановок в столбце;
• отображение текста условий на значения в удобном виде для пользователя;
• форматирование данных и определение масок ввода;
• использование подтаблиц, сохранение порядка сортировки и фильтров, а также форматов режима таблицы для представлений, сохраненных процедур и встроенных определяемых пользователем функций.
Некоторые расширенные свойства, используемые Microsoft Access, не являются видимыми в проекте Microsoft Access, например свойство, устанавливающее ширину столбца в режиме таблицы. Другие расширенные свойства доступны в окнах свойств в конструкторе базы данных, таблицы и запроса для представлений, сохраненных процедур с одной инструкцией (за исключением свойств столбца), а также встроенных функций. Поскольку сохраненные процедуры с несколькими инструкциями, а также табличные и скалярные определяемые пользователем функции редактируются в текстовом редакторе SQL, они не поддерживают расширенные свойства.
По умолчанию Microsoft SQL Server не поддерживает наследование расширенных свойств. Столбец в представлении автоматически не получает одинаковые свойства со столбцом в базовой таблице. Однако при создании столбцов в представлении или функции путем копирования столбцов из таблицы и при копировании расширенных свойств из столбцов таблицы в свойства элемента управления формы и отчета проект Microsoft Access поддерживает наследование расширенных свойств.
...
Изменения в расширенных свойствах таблиц, представлений, сохраненных процедур и встроенных функций обнаружат все пользователи базы данных, поскольку такие свойства сохраняются в базе данных Microsoft SQL Server. Это означает, что при изменении формата подтаблицы он изменяется для всех пользователей, которые будут открывать ее в режиме таблицы
Возможные варианты использования проектов Microsoft Access
Существует несколько способов развертывания проекта Microsoft Access.
Использование проектов Microsoft Access в многопользовательской среде
В многопользовательской среде каждому пользователю часто необходима его собственная копия файла проекта Microsoft Access, подключенная к общей базе данных Microsoft SQL Server. Два или несколько пользователей не могут изменять объекты, такие как формы или отчеты, в одном и том же файле проекта Microsoft Access.
Проект Microsoft Access всегда открывается в монопольном режиме. При попытке открыть проект Microsoft Access, уже открытый другим пользователем, программа выводит предупреждение о том, что этот файл открыт в монопольном режиме, и предлагает воспользоваться копией, доступной только для чтения. В этом случае в проекте Microsoft Access невозможно изменение объектов.
При запуске приложения для совместной работы каждому пользователю предоставляется копия файла проекта Microsoft Access, то есть собственная копия форм, отчетов, страниц доступа к данным, макросов и модулей.
Независимо от того, имеет ли пользователь личную копию проекта Microsoft Access или нет, база данных Microsoft SQL Server, а также расположенные в ней таблицы, запросы и диаграммы фактически являются общими. Таким образом, в многопользовательской среде важно обеспечить достаточную защиту совместно используемых объектов базы данных, чтобы их целостность не нарушалась.
При использовании Microsoft Windows Terminal Server каждый пользователь может иметь личную область данных, определенную профилем пользователя на Terminal Server. Можно создать копию проекта в папке данных текущего приложения каждого пользователя, и при входе пользователя в Terminal Server ему будет предоставлена личная копия файла проекта Microsoft Access.
Совместное использование базы данных Microsoft SQL в Internet
Существует возможность создания страниц доступа к данным или вывода одного или нескольких объектов базы данных в генерируемый сервером файл HTML или статический файл HTML. Затем можно отобразить Web-страницы в обозревателе Microsoft Internet Explorer и получить доступ к данным через эти страницы.
Создание автономных приложений данных
Не всегда удается иметь доступ к базам данных организации. Однако часто требуется получить некоторые сведения в автономном режиме (то есть загрузить данные на удаленный компьютер, например на переносной или домашний), просмотреть и обновить их, а затем согласовать изменения при непосредственном доступе к базе данных. Используя набор продуктов Microsoft, разработчик и администратор базы данных могут создать приложение, которое позволит пользователям иметь автономный доступ к данным.
Использование файла проекта Microsoft Access и базы данных разными пользователями
Многие проекты приложений с одним файлом базы данных могут использовать несколько копий базы данных для разработки, тестирования и распространения. В течение всего срока использования производственной базы данных изменения и исправления сначала вносятся в базу для разработки, затем распространяются на тестовую базу данных и только после этого на производственную базу данных.