Введение
Microsoft Access — это система управления базами данных (СУБД) от Microsoft, сочетающая в себе реляционный механизм Access Database Engine (ACE) с графическим пользовательским интерфейсом и инструментами разработки программного обеспечения. Она входит в состав пакета приложений Microsoft 365, поставляемого в редакциях Professional и выше, или продается отдельно. Microsoft Access хранит данные в собственном формате, основанном на Access Database Engine (ранее Jet Database Engine). Также она может импортировать или напрямую подключаться к данным, хранящимся в других приложениях и базах данных. Разработчики программного обеспечения, архитекторы данных и опытные пользователи могут использовать Microsoft Access для разработки прикладных программ. Как и другие приложения Microsoft Office, Access поддерживается Visual Basic for Applications (VBA) — объектно-ориентированным языком программирования, который может обращаться к различным объектам, включая устаревшие DAO (Data Access Objects), ActiveX Data Objects и множество других компонентов ActiveX. Визуальные объекты, используемые в формах и отчетах, предоставляют доступ к своим методам и свойствам в среде программирования VBA, а модули кода VBA могут объявлять и вызывать операции операционной системы Windows.
Microsoft Access is a database management system (DBMS) from Microsoft that combines the relational Access Database Engine (ACE) with a graphical user interface and software development tools. It is a member of the Microsoft 365 suite of applications, included in the Professional and higher editions or sold separately. Microsoft Access stores data in its own format based on the Access Database Engine (formerly Jet Database Engine). It can also import or link directly to data stored in other applications and databases. Software developers, data architects and power users can use Microsoft Access to develop application software. Like other Microsoft Office applications, Access is supported by Visual Basic for Applications (VBA), an object based programming language that can reference a variety of objects including the legacy DAO (Data Access Objects), ActiveX Data Objects, and many other ActiveX components. Visual objects used in forms and reports expose their methods and properties in the VBA programming environment, and VBA code modules may declare and call Windows operating system operations.
История
До появления Access, Borland (с Paradox), Ashton Tate (с dBase, приобретенная Borland в 1991 году) и Fox (с FoxPro) доминировали на рынке настольных баз данных. Microsoft Access стала первой базой данных для широкого круга пользователей, предназначенной для Windows. После приобретения Microsoft компании FoxPro в 1992 году и внедрения в Access алгоритмов оптимизации запросов Rushmore, разработанных Fox, Microsoft Access быстро стала доминирующей базой данных для Windows, фактически устранив конкуренцию, не сумевшую перейти из среды MS-DOS. В 1980-х годах Microsoft Access называлась отдельной телекоммуникационной программой, обеспечивавшей эмуляцию терминала и удобные интерфейсы для доступа к онлайн-сервисам, таким как Dow Jones, Compuserve и электронная почта.
Проект Омега
Первая попытка Microsoft продать реляционную базу данных относится к середине 1980-х годов, когда Microsoft получила лицензию на продажу R:Base. В конце 1980-х годов Microsoft разработала собственное решение под кодовым названием Omega. В 1988 году было подтверждено, что ведется разработка базы данных для Windows и OS/2. Предполагалось, что она будет включать язык Embedded Basic "EB", но унификация макроязыков произошла только с появлением Visual Basic for Applications (VBA). Также ожидалось, что Omega обеспечит интерфейс к Microsoft SQL Server. Приложение требовало значительных ресурсов, и поступали сообщения о его медленной работе на процессорах 386, доступных в то время. Релиз был запланирован на первый квартал 1990 года, но в 1989 году разработка продукта была перезапущена, а поставка перенесена не ранее января 1991 года. Части проекта впоследствии были использованы в других проектах Microsoft: Cirrus (кодовое имя Access) и Thunder (кодовое имя Visual Basic, где использовался движок Embedded Basic).
Проект "Циррус"
После того, как проект Omega был закрыт, часть его разработчиков была переведена в проект Cirrus (большинство – в команду, создавшую Visual Basic). После приобретения Microsoft компании FoxPro ходили слухи о возможной замене разрабатываемого Microsoft проекта на FoxPro, но компания решила развивать оба проекта параллельно. Изначально предполагалось использование Extensible Storage Engine (Jet Blue), однако в итоге была реализована поддержка только Jet Database Engine (Jet Red). В проекте был использован код как из проекта Omega, так и из предварительной версии Visual Basic. Название Access стало официальным названием продукта. Ранее "Access" использовалось для более старой программы эмуляции терминалов от Microsoft. Спустя годы после прекращения поддержки этой программы, было решено повторно использовать это название.
Хронология
Microsoft выпустила Access версии 1.0 13 ноября 1992 года, а Access 1.1 — в мае 1993 года для повышения совместимости с другими продуктами Microsoft и включения языка программирования Access Basic. С Access v2.0 компания Microsoft указала минимальные аппаратные требования: Microsoft Windows v3.1 с 4 МБ оперативной памяти (требуется), 6 МБ оперативной памяти (рекомендуется); 8 МБ свободного места на жестком диске (требуется), 14 МБ (рекомендуется). Продукт распространялся на семи дискетах объемом 1,44 МБ. В руководстве указана дата авторского права 1994 года. В составе Microsoft Office 4.3 Professional с Book Shelf, Microsoft Access 2.0 включал первые примеры баз данных "NorthWind Trader", охватывающие все возможные аспекты программирования собственной базы данных. Впервые в 1994 году в примере Northwind Traders были представлены функции главной панели навигации, новые для Access 2.0. Фотография Эндрю Фуллера, запись № 2 в этой демонстрационной базе данных, принадлежала человеку, который представлял и работал с Microsoft для создания такого выдающегося примера базы данных. В Office 95 Microsoft Access 7.0 (также известный как "Access 95") стал частью пакета Microsoft Office Professional Suite, присоединившись к Microsoft Excel, Word и PowerPoint и перейдя с Access Basic на VBA. С тех пор Microsoft выпускала новые версии Microsoft Access с каждым выпуском Microsoft Office. Это Access 97 (версия 8.0), Access 2000 (версия 9.0), Access 2002 (версия 10.0), Access 2003 (версия 11.5), Access 2007 (версия 12.0), Access 2010 (версия 14.0), Access 2013 (версия 15.0) и Access 2016 (версия 16.0). Версии 3.0 и 3.5 Jet Database Engine (используемые в Access 7.0 и выпущенном позднее Access 97) содержали критическую ошибку, из-за которой эти версии Access были неработоспособны на компьютерах с более чем 1 ГБ памяти. Хотя Microsoft исправила эту проблему для Jet 3.5/Access 97 после выпуска, она так и не устранила проблему с Jet 3.0/Access 95. Формат базы данных Access (Jet MDB) также развивался с годами. Форматы включают Access 1.0, 1.1, 2.0, 7.0, 97, 2000, 2002 и 2007. Наиболее значительным переходом был переход от Access 97 к формату Access 2000, который не обеспечивает обратную совместимость с более ранними версиями Access. Все более новые версии Access поддерживают формат Access 2000. В формат Access 2002 были добавлены новые функции, которые можно использовать в Access 2002, 2003, 2007 и 2010. Microsoft Access 2000 увеличил максимальный размер базы данных до 2 ГБ с 1 ГБ в Access 97. Microsoft Access 2007 представил новый формат базы данных: ACCDB. Он поддерживает ссылки на списки SharePoint и сложные типы данных, такие как многозначные поля и поля вложений. Эти новые типы полей по сути представляют собой наборы записей в полях и позволяют хранить несколько значений или файлов в одном поле. Microsoft Access 2007 также представил поле "Вложения файлов", которое хранило данные более эффективно, чем поле OLE (Object Linking and Embedding). Microsoft Access 2010 представил новую версию формата ACCDB, поддерживающую размещение веб-служб Access на сервере SharePoint 2010. Впервые это позволило запускать приложения Access без необходимости установки Access на компьютере пользователя и обеспечило первую поддержку пользователей Mac. Любой пользователь на сайте SharePoint с достаточными правами мог использовать веб-службу Access. Для создания веб-службы Access разработчику по-прежнему требовалась копия Access, а настольная версия Access оставалась частью Access 2010. Веб-службы Access отличались от настольных приложений. Автоматизация осуществлялась только с помощью макроязыка (не VBA), который Access автоматически преобразовывал в JavaScript. Данные больше не хранились в базе данных Access, а в списках SharePoint. Настольная база данных Access могла быть связана с данными SharePoint, поэтому были возможны гибридные приложения, позволяющие поддерживать пользователей SharePoint, нуждающихся в базовых представлениях и редактировании, в то время как более сложные традиционные приложения могли оставаться в настольной базе данных Access. Microsoft Access 2013 предлагает традиционные настольные приложения Access, а также значительно обновленную веб-службу SharePoint 2013. Модель Access Web в Access 2010 была заменена новой архитектурой, которая хранит свои данные в реальных базах данных SQL Server. В отличие от списков SharePoint, это обеспечивает настоящий дизайн реляционной базы данных с референциальной целостностью, масштабируемостью, расширяемостью и производительностью, ожидаемой от SQL Server. Решения баз данных, которые можно создать в SharePoint 2013, предлагают современный пользовательский интерфейс, предназначенный для отображения нескольких уровней взаимосвязей, которые можно просматривать и редактировать, а также изменять размер для различных устройств и поддерживать сенсорное управление. Рабочий стол Access 2013 аналогичен Access 2010, но некоторые функции были прекращены, включая поддержку проектов данных Access (ADP), сводных таблиц, диаграмм сводных таблиц, коллекций данных Access, контроля исходного кода, репликации и других устаревших функций. Максимальный размер настольной базы данных Access остался равным 2 ГБ (как и с версии 2000 года). Microsoft Access больше не входит в состав одноразовой версии Microsoft Office 2021, но остается в составе Microsoft 365 в редакциях Apps for business и Business Standard. Новые функции Access 2021 включают расширенный тип данных даты и времени и поддержку темного оформления. Помимо использования собственного файла хранения базы данных, Microsoft Access также может использоваться как «интерфейс» программы, в то время как другие продукты выступают в качестве «бэкэнда» таблиц, такие как Microsoft SQL Server и продукты, не относящиеся к Microsoft, такие как Oracle и Sybase. Несколько источников бэкэнда могут использоваться базой данных Microsoft Access Jet (форматы ACCDB и MDB). Аналогично, некоторые приложения, такие как Visual Basic, ASP.NET или Visual Studio NET, будут использовать формат базы данных Microsoft Access для своих таблиц и запросов. Microsoft Access также может быть частью более сложного решения, где он может быть интегрирован с другими технологиями, такими как Microsoft Excel, Microsoft Outlook, Microsoft Word, Microsoft PowerPoint и элементы управления ActiveX. Таблицы Access поддерживают различные стандартные типы полей, индексы и референциальную целостность, включая каскадные обновления и удаления. Access также включает интерфейс запросов, формы для отображения и ввода данных и отчеты для печати. База данных Access, содержащая эти объекты, является многопользовательской и обрабатывает блокировку записей. Повторяющиеся задачи можно автоматизировать с помощью макросов с параметрами «пунктир и щелчок». Также легко разместить базу данных в сети и позволить нескольким пользователям совместно использовать и обновлять данные, не перезаписывая работу друг друга. Данные блокируются на уровне записи, что существенно отличается от Excel, который блокирует всю таблицу. В программе есть шаблоны баз данных, а также возможность загрузки с веб-сайта Microsoft. Эти параметры доступны при запуске Access и позволяют пользователям расширить базу данных предварительно определенными таблицами, запросами, формами, отчетами и макросами. Шаблоны баз данных поддерживают код VBA, но шаблоны Microsoft не включают код VBA. Программисты могут создавать решения с помощью VBA, который похож на Visual Basic 6.0 (VB6) и используется во всех программах Microsoft Office, таких как Excel, Word, Outlook и PowerPoint. Большинство кодов VB6, включая использование вызовов API Windows, можно использовать в VBA. Опытные пользователи и разработчики могут расширить базовые решения для конечных пользователей до профессионального решения с расширенной автоматизацией, проверкой данных, обработкой ошибок и многопользовательской поддержкой. Количество одновременных пользователей, которых можно поддерживать, зависит от объема данных, выполняемых задач, уровня использования и дизайна приложения. Общепринятые ограничения — решения с данными объемом 1 ГБ или меньше (Access поддерживает до 2 ГБ) и они хорошо работают со 100 или менее одновременными подключениями (поддерживается 255 одновременных пользователей). Эта возможность часто хорошо подходит для решений для отделов. Если вы используете решение базы данных Access в многопользовательском сценарии, приложение должно быть «разделено». Это означает, что таблицы находятся в одном файле, называемом «бэкэнд»...
Особенности
Пользователи могут создавать таблицы, запросы, формы и отчеты и связывать их между собой с помощью макросов. Продвинутые пользователи могут использовать VBA для разработки сложных решений с расширенными возможностями манипулирования данными и управления пользовательским интерфейсом. Access также предоставляет функции создания отчетов, которые могут работать с любым источником данных, к которому Access имеет доступ. Изначальная концепция Access заключалась в том, чтобы предоставить конечным пользователям возможность доступа к данным из любого источника. Другие возможности включают импорт и экспорт данных во множество форматов, таких как Excel, Outlook, ASCII, dBase, Paradox, FoxPro, SQL Server и Oracle. Также предусмотрена возможность связывания с данными в их текущем расположении и использования их для просмотра, запросов, редактирования и создания отчетов. Это позволяет изменять исходные данные, обеспечивая при этом использование Access актуальной информации. Access может выполнять гетерогенные соединения между наборами данных, хранящимися на различных платформах. Access часто используется специалистами для загрузки данных из корпоративных баз данных с целью их обработки, анализа и создания отчетов на локальном компьютере. Существует также формат базы данных Access (ACE и ранее Jet) (MDB или ACCDB в Access 2007), который позволяет хранить приложение и данные в одном файле. Это упрощает распространение всего приложения другим пользователям, которые могут запускать его в автономном режиме. Одним из преимуществ Access для программистов является его относительная совместимость с SQL (языком структурированных запросов). Запросы можно просматривать графически или редактировать в виде SQL-инструкций, а SQL-инструкции можно использовать непосредственно в макросах и модулях VBA для манипулирования таблицами Access. Пользователи могут комбинировать и использовать как VBA, так и "макросы" для программирования форм и логики, а также использовать объектно-ориентированные возможности. VBA также можно включать в запросы. Microsoft Access поддерживает параметризованные запросы. К этим запросам и таблицам Access можно обращаться из других программ, таких как VB6 и .NET, через DAO или ADO. В Microsoft Access VBA может ссылаться на параметризованные хранимые процедуры через ADO. Настольные версии Microsoft SQL Server могут использоваться с Access в качестве альтернативы Jet Database Engine. Поддержка началась с MSDE (Microsoft SQL Server Desktop Engine) – упрощенной версии Microsoft SQL Server 2000, и продолжается с версиями SQL Server Express 2005 и 2008. Microsoft Access – это база данных, основанная на файловом сервере. В отличие от реляционных систем управления базами данных (RDBMS) типа клиент-сервер, Microsoft Access не реализует триггеры базы данных, хранимые процедуры или ведение журнала транзакций. Access 2010 включает триггеры на уровне таблицы и хранимые процедуры, встроенные в движок данных ACE. Таким образом, для использования хранимых процедур или триггеров таблиц с Access 2010 не требуется система клиент-серверной базы данных. В Access 2010 таблицы, запросы, формы, отчеты и макросы можно разрабатывать специально для веб-приложений. Интеграция с Microsoft SharePoint 2010 также значительно улучшена. В версии 2013 Microsoft Access был представлен преимущественно плоский дизайн и возможность установки приложений из магазина Office, однако новых функций добавлено не было. Тема была частично обновлена снова в 2016 году, но темная тема для Access создана не была.
Время выполнения Microsoft Access
Microsoft предлагает бесплатные версии выполнения Microsoft Access, позволяющие пользователям запускать настольные приложения Access без необходимости приобретать или устанавливать розничную версию Microsoft Access. Это позволяет разработчикам Access создавать базы данных, которые можно свободно распространять неограниченному числу конечных пользователей. Бесплатно скачать версии выполнения Access 2007 и более поздних версий можно на сайте Microsoft. Версии выполнения для Access 2003 и более ранних версий входили в состав Office Developer Extensions/Toolkit и требовали отдельной покупки. Версия выполнения позволяет пользователям просматривать, редактировать и удалять данные, а также выполнять запросы, формы, отчеты, макросы и код модулей VBA. Версия выполнения не позволяет пользователям изменять структуру таблиц, запросов, форм, отчетов, макросов или модульного кода Microsoft Access. Версии выполнения аналогичны соответствующим полным версиям Access и обычно совместимы с более ранними версиями; например, Access Runtime 2010 позволяет запускать приложения Access, созданные в версиях 2010, 2007, 2003 и 2000 годов. В связи с устаревшими функциями в Access 2013, его версия выполнения также не поддерживает эти старые функции. В процессе разработки можно эмулировать среду выполнения из полнофункциональной версии, используя параметр командной строки /runtime.
Архитектура разделенной базы данных
Приложения Microsoft Access могут использовать архитектуру разделенной базы данных. Единая база данных может быть разделена на отдельный файл "back end", содержащий таблицы данных (размещенные на общем файловом сервере), и "front end" (содержащий объекты приложения, такие как запросы, формы, отчеты, макросы и модули). "Front end" приложение Access распространяется на рабочий стол каждого пользователя и связывается с общей базой данных. При использовании этого подхода каждый пользователь имеет на своем компьютере копию Microsoft Access (или версию для выполнения) вместе с базой данных приложения. Это снижает сетевой трафик, поскольку приложение не извлекается при каждом использовании. База данных "front end" может также содержать локальные таблицы для хранения настроек пользователя или временных данных. Такая архитектура разделенной базы данных также позволяет разрабатывать приложение независимо от данных. Одним из недостатков является то, что пользователи могут вносить различные изменения в свою локальную копию приложения, что затрудняет управление версиями. Когда новая версия готова, база данных "front end" заменяется, не затрагивая базу данных данных. Microsoft Access предоставляет две встроенные утилиты – Database Splitter и Linked Table Manager – для упрощения работы с этой архитектурой. Связанные таблицы в Access используют абсолютные пути вместо относительных, поэтому среда разработки должна иметь те же пути, что и производственная среда, либо в VBA можно написать процедуру "динамической связи". Для очень больших баз данных Access это может привести к проблемам с производительностью, и в таких случаях следует рассмотреть возможность использования SQL-сервера. Эта проблема менее актуальна, если вся база данных помещается в оперативную память ПК, поскольку Access кэширует данные и индексы.
Миграция на SQL Server
Для масштабирования приложений Access до корпоративных или веб-решений одним из возможных методов является миграция в Microsoft SQL Server или эквивалентную серверную базу данных. Архитектура клиент-сервер значительно снижает затраты на обслуживание и повышает безопасность, доступность, стабильность и ведение журнала транзакций. Access 2000 – Access 2010 включали функцию под названием "Мастер повышения версии", которая позволяла пользователям обновлять свои базы данных до Microsoft SQL Server, клиент-серверной базы данных ODBC. Эта функция была удалена из Access 2013. Дополнительное решение, SQL Server Migration Assistant for Access (SSMA), по-прежнему доступно для бесплатной загрузки с сайта Microsoft. Существует множество вариантов обновления. После переноса данных и запросов в SQL Server база данных Access может быть связана с базой данных SQL, с учетом ограничений при преобразовании типов данных: Типы "Да/Нет": в Microsoft Access тип данных "Да/Нет" (Истина/Ложь) имеет три состояния: пустое, нет/ложь (0) и да/истина (−1). Соответствующий тип данных SQL Server – двоичный, с двумя состояниями; допустимые значения – 0 и 1. Дата/время (расширенное): формат smalldatetime в SQL Server имеет точность в 1 минуту, минимальное значение даты – 1900 01 01, максимальное значение даты – 2079 06 06; формат datetime имеет точность в 10/3 миллисекунды (округляется до 0,000, 0,003 или 0,007 секунды), минимальное значение даты – 1753 01 01, максимальное значение даты – 9999 12 31; формат datetime2 имеет точность в 100 наносекунд, минимальное значение даты – 0001 01 01, максимальное значение даты такое же, как у datetime. Форматы "Дата/время" и "Дата/время (расширенное)" в Access имеют более высокую точность, чем smalldatetime, datetime и datetime2, и более широкий диапазон дат, чем форматы smalldatetime и datetime в SQL Server. Тем не менее, SQL Server по-прежнему является наиболее простым вариантом миграции. Извлечение данных из связанных таблиц оптимизировано для получения только необходимых записей, но в этом сценарии производительность может быть ниже оптимальной для SQL Server. Например, в случаях, когда объединение нескольких таблиц все еще требует копирования всей таблицы по сети. В предыдущих версиях Access, включая Access 2010, базы данных также можно было преобразовать в проекты данных Access (ADP), которые напрямую связаны с одной базой данных SQL Server. Эта функция была удалена из Access 2013. ADP поддерживают возможность непосредственного создания и изменения объектов SQL Server, таких как таблицы, представления, хранимые процедуры и ограничения SQL Server. Представления и хранимые процедуры могут значительно уменьшить сетевой трафик при объединении нескольких таблиц. SQL Server поддерживает временные таблицы и ссылки на другие источники данных, помимо одной базы данных SQL Server. В конечном итоге, некоторые базы данных Access полностью заменяются другой технологией, такой как ASP.NET или Java, после преобразования данных. Однако любая миграция может потребовать значительных усилий, поскольку язык SQL в Access является более мощным расширением стандартного SQL. Кроме того, процедуры приложений Access, будь то VBA или макросы, написаны на относительно более высоком уровне по сравнению с современными альтернативами, которые являются надежными и всесторонними. Язык макросов Access, обеспечивающий еще более высокий уровень абстракции, чем VBA, был значительно улучшен в Access 2010 и снова в Access 2013. Во многих случаях разработчики создают прямые веб-интерфейсы для данных с использованием ASP.NET, сохраняя при этом основные процессы автоматизации бизнеса, административные функции и функции отчетности, которые не требуют распространения среди всех пользователей Access, для обслуживания информационных работников. Хотя все данные Access можно напрямую перенести в SQL Server, некоторые запросы не могут быть успешно перенесены. В некоторых ситуациях может потребоваться преобразовать функции VBA и пользовательские функции в T-SQL или функции/процедуры .NET. Запросы с перекрестной таблицей можно перенести в SQL Server с помощью команды PIVOT.
"Yes/No" types: In Microsoft Access there are three states for the Yes/No (True/False) data type: empty, no/false (0) and yes/true (−1). The corresponding SQL Server data type is binary, with only two states; the permissible values are 0 and 1. Date/Time (Extended): SQL Server's smalldatetime format has precision of 1 minute, minimum date value is 1900 01 01, maximum date value is 2079 06 06; datetime format has precision of 10/3 milliseconds (rounded to increments of .000, .003, or .007 seconds), minimum date value is 1753 01 01, maximum date value is 9999 12 31; datetime2 format has precision of 100 nanoseconds, minimum date value is 0001 01 01, same maximmum date value as datetime. Access's Date/Time and Date/Time Extended have higher precisions than smalldatetime and datetime and datetime2, and wider date range than SQL Server's smalldatetime and datetime formats. Regardless, SQL Server is still the easiest migration. Retrieving data from linked tables is optimized to just the records needed, but this scenario may operate less efficiently than what would otherwise be optimal for SQL Server. For example, in instances where multi table joins still require copying the whole table across the network. In previous versions of Access, including Access 2010, databases can also be converted to Access Data Projects (ADP) which are tied directly to one SQL Server database. This feature was removed from Access 2013. ADP's support the ability to directly create and modify SQL Server objects such as tables, views, stored procedures, and SQL Server constraints. The views and stored procedures can significantly reduce the network traffic for multi table joins. SQL Server supports temporary tables and links to other data sources beyond the single SQL Server database. Finally, some Access databases are completely replaced by another technology such as ASP. NET or Java once the data is converted. However, any migration may dictate major effort since the Access SQL language is a more powerful superset of standard SQL. Further, Access application procedures, whether VBA and macros, are written at a relatively higher level versus the currently available alternatives that are both robust and comprehensive. The Access macro language, allowing an even higher level of abstraction than VBA, was significantly enhanced in Access 2010 and again in Access 2013. In many cases, developers build direct web to data interfaces using ASP. NET, while keeping major business automation processes, administrative and reporting functions that do not need to be distributed to everyone in Access for information workers to maintain. While all Access data can migrate to SQL Server directly, some queries cannot migrate successfully. In some situations, you may need to translate VBA functions and user defined functions into T–SQL or NET functions / procedures. Crosstab queries can be migrated to SQL Server using the PIVOT command.
Защита
Приложения Microsoft Access могут быть защищены различными способами, наиболее простым из которых является контроль доступа по паролю; это относительно слабая форма защиты. Более надежный уровень защиты – использование безопасности рабочей группы, требующей имени пользователя и пароля. Пользователи и группы могут быть определены вместе с их правами доступа на уровне типа объекта или отдельного объекта. Это позволяет назначать права только для чтения или ввода данных, однако настройка может быть сложной. Отдельный файл безопасности рабочей группы содержит параметры, которые можно использовать для управления несколькими базами данных. Безопасность рабочей группы не поддерживается в формате баз данных Access 2007 и Access 2010 ACCDB, хотя Access 2007 и Access 2010 по-прежнему поддерживают ее для баз данных MDB. Базы данных также могут быть зашифрованы. Формат ACCDB обеспечивает значительно более продвинутое шифрование по сравнению с предыдущими версиями. Кроме того, если необходимо защитить структуру базы данных от изменений, базы данных Access можно заблокировать/защитить (и исходный код скомпилировать) путем преобразования базы данных в файл MDE. Все изменения в проекте VBA (модули, формы или отчеты) необходимо вносить в исходный файл MDB, а затем повторно преобразовывать его в MDE. В Access 2007 и Access 2010 база данных ACCDB преобразуется в файл ACCDE. Существуют инструменты для разблокировки и "декомпиляции", хотя некоторые элементы, включая исходные комментарии VBA и форматирование, обычно невозможно восстановить.
Версии
Версия Номер версии Дата выпуска Версия JET/ACE Поддерживаемые ОС Версия Office
Access 1.0 1.0 1992 1.0 Windows 3.0
Access 1.1 1.1 1993 1.1 Windows 3.1x Office 97 Professional и Developer
Access 2000 9.0 7 июня 1999 4.0 SP1 Windows 95, Windows NT 4.0, Windows 98, Windows 2000 Office 2000 Professional, Premium и Developer
Access 2002 10.0 31 мая 2001 Windows NT 4.0 SP6, Windows 98, Windows 2000, Windows Me Office XP Professional и Developer
Access 2003 11.0 27 ноября 2003 Windows 2000 SP3 или более поздняя, Windows XP, Windows Vista, Windows 7 Office 2003 Professional и Professional Enterprise
Access 2007 12.0 27 января 2007 12 Windows XP SP2, Windows Server 2003 SP1 или более новая ОС Office 2007 Professional, Professional Plus, Ultimate и Enterprise
Access 2010 14.0 15 июля 2010 14 Windows XP SP3, Windows Server 2003 SP2, Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows Server 2012, Windows 8 Office 2010 Professional, Professional Academic и Professional Plus
Access 2013 15.0 29 января 2013 15 Windows 7, Windows Server 2008 R2, Windows Server 2012, Windows 8, Windows 8.1, Windows 10 Office 2013 Professional и Professional Plus
Access 2016 16.0 22 сентября 2015 16 Windows 7, Windows 8, Windows 8.1, Windows 10 Office 2016 Professional и Professional Plus
Access 2019 16.0 24 сентября 2018 Windows 10 Office 2019 Professional и Professional Plus
Access 2021 16.0 5 октября 2021 Windows 10, Windows 11 Office 2021 Professional, Microsoft 365 Apps for business
Версий Access между 2.0 и 7.0 не существует, поскольку версия Office 95 была выпущена вместе с Word 7. Все продукты Office 95 имеют возможности OLE 2, а Access 7 показывает, что он совместим с Word 7. Версия номер 13 была пропущена.