Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Microsoft Access - это система управления базами данных (СУБД) от Microsoft, которая сочетает в себе реляционный Microsoft Jet Database Engine с графическим пользовательским интерфейсом и инструментами разработки программного обеспечения. Он входит в набор приложений Microsoft 365 , входит в выпуски Professional и выше или продается отдельно.

Microsoft Access хранит данные в собственном формате на основе ядра СУБД Access Jet. Он также может импортировать или напрямую связываться с данными, хранящимися в других приложениях и базах данных. [3]

Разработчики программного обеспечения , архитекторы данных и опытные пользователи могут использовать Microsoft Access для разработки прикладного программного обеспечения . Как и другие приложения Microsoft Office, Access поддерживается Visual Basic для приложений (VBA), объектно-ориентированным языком программирования, который может ссылаться на различные объекты, включая устаревшие DAO (объекты доступа к данным), объекты данных ActiveX и многие другие компоненты ActiveX. . Визуальные объекты, используемые в формах и отчетах, предоставляют свои методы и свойства в среде программирования VBA, а модули кода VBA могут объявлять и вызывать операции операционной системы Windows . У него нет веб-версии.

История [ править ]

До появления Access на рынке баз данных для настольных ПК доминировали Borland (с Paradox и dBase ) и Fox (с FoxPro ). Microsoft Access была первой программой баз данных для массового рынка для Windows. С приобретением Microsoft FoxPro в 1992 году и включением в Access подпрограмм оптимизации запросов Rushmore, разработанных Fox , Microsoft Access быстро стала доминирующей базой данных для Windows, эффективно устранив конкуренцию, которая не смогла перейти из мира MS-DOS . [4]

Проект Омега [ править ]

Первая попытка Microsoft продать продукт для реляционных баз данных была предпринята в середине 1980-х годов, когда Microsoft получила лицензию на продажу R: Base . [5] В конце 1980-х годов Microsoft разработала собственное решение под кодовым названием Omega. [6] В 1988 году было подтверждено, что продукт базы данных для Windows и OS / 2 находится в разработке. [7] [8] Он собирался включить встроенный базовый язык «EB», [6] который должен был стать языком для написания макросов во всех приложениях Microsoft, [9] но унификация макроязыков не произошла до тех пор, пока введение Visual Basic для приложений(VBA). Также ожидалось, что Omega предоставит интерфейс для Microsoft SQL Server . [10] Приложение было очень требовательным к ресурсам, и были сообщения о том, что оно медленно работало на 386 процессорах, которые были доступны в то время. [11] Его планировалось выпустить в 1 квартале 1990 года [12], но в 1989 году разработка продукта была прекращена [5] [13], и его поставка была перенесена не раньше января 1991 года. [11] 14] Части проекта позже использовались для других проектов Microsoft: Cirrus (кодовое имя для Access) и Thunder (кодовое имя для Visual Basic , где использовался механизм Embedded Basic).[5] [6] После премьеры Access проект Omega был продемонстрирован в 1992 году нескольким журналистам и включал функции, которые не были доступны в Access. [15]

Проект Cirrus [ править ]

После того, как проект Omega был отменен, некоторые из его разработчиков были назначены в проект Cirrus (большинство было назначено команде, создавшей Visual Basic). [5] Его целью было создать конкурента для таких приложений, как Paradox или dBase, которые будут работать в Windows. [16] После того, как Microsoft приобрела FoxPro , ходили слухи, что проект Microsoft может быть заменен им, [17] но компания решила развивать их параллельно. Предполагалось, что в проекте будет использоваться Extensible Storage Engine (Jet Blue) [18], но, в конце концов, будет поддерживаться только Microsoft Jet Database Engine.(Jet Red) был предоставлен. В проекте использовалась часть кода как из проекта Omega, так и из предварительной версии Visual Basic. [6] В июле 1992 года бета-версии Cirrus были отправлены разработчикам [19], и название Access стало официальным названием продукта. [20] «Доступ» изначально использовался для более старой программы эмуляции терминала от Microsoft. Спустя годы после того, как программа была заброшена, они решили повторно использовать это имя здесь. [21]

Хронология [ править ]

1992: Microsoft выпустила Access версии 1.0 13 ноября 1992 года и Access 1.1 в мае 1993 года для улучшения совместимости с другими продуктами Microsoft и включения языка программирования Access Basic.

1994: Microsoft определила минимальные требования к оборудованию для Access v2.0 как: Microsoft Windows v3.1 с 4 МБ ОЗУ , рекомендуется 6 МБ ОЗУ; 8 МБ свободного жесткого диска пространства требуется, рекомендуется 14 Мб на жестком диске. Продукт поставляется на семи дискетах по 1,44 МБ. В руководстве указана дата создания авторских прав 1994 г.

Как часть Microsoft Office 4.3 Professional с книжной полкой, Microsoft Access 2.0 был включен в первые образцы баз данных «NorthWind Trader», которые охватывали все возможные аспекты программирования вашей собственной базы данных. В образце Northwind Traders впервые были представлены функции главного коммутатора, новые для Access 2.0 в 1994 году. Фотография Эндрю Фуллера, запись № 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). ).

В версиях 3.0 и 3.5 ядра базы данных Microsoft Jet (используемого Access 7.0 и более поздним выпуском Access 97 соответственно) возникла критическая проблема, из-за которой эти версии Access нельзя было использовать на компьютере с более чем 1 ГБ памяти. [22] Хотя 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. С 2011 года все новые версии 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 (связывание и внедрение объектов) .

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. [23] Веб-модель Access в Access 2010 была заменена новой архитектурой, которая хранит данные в реальных базах данных SQL Server. В отличие от списков SharePoint, это предлагает настоящий дизайн реляционной базы данных с ссылочной целостностью, масштабируемостью, расширяемостью и производительностью, которые можно ожидать от SQL Server. [24]Решения для баз данных, которые могут быть созданы в SharePoint 2013, предлагают современный пользовательский интерфейс, предназначенный для отображения нескольких уровней отношений, которые можно просматривать и редактировать, а также изменять размер для различных устройств и поддерживать сенсорный ввод. Рабочий стол Access 2013 похож на Access 2010, но некоторые функции были прекращены, включая поддержку проектов данных Access [ требуется пояснение ] (ADP), сводных таблиц, сводных диаграмм, коллекций данных Access, управления исходным кодом, репликации и других устаревших функций. [25] Максимальный размер базы данных Access для настольных компьютеров остался 2 ГБ (как это было с версии 2000 года).

Использует [ редактировать ]

Помимо использования собственного файла хранилища базы данных, Microsoft Access также может использоваться в качестве «внешнего интерфейса» программы, в то время как другие продукты действуют как «внутренние» таблицы, такие как Microsoft SQL Server и продукты сторонних производителей, такие как как 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 также включает интерфейс запросов , формы для отображения и ввода данных и отчеты для печати. Базовая база данных Jet , которая содержит эти объекты, является многопользовательской и обрабатывает блокировку записей .

Повторяющиеся задачи можно автоматизировать с помощью макросов с параметрами « укажи и щелкни» . Также легко разместить базу данных в сети, и несколько пользователей будут совместно использовать и обновлять данные, не перезаписывая работу друг друга. Данные блокируются на уровне записи, что значительно отличается от Excel, который блокирует всю электронную таблицу.

В программе есть шаблоны баз данных, которые можно загрузить с веб-сайта Microsoft. Эти параметры доступны при запуске Access и позволяют пользователям расширять базу данных с помощью предопределенных таблиц, запросов , форм, отчетов и макросов. Шаблоны баз данных поддерживают код VBA, но шаблоны Microsoft не включают код VBA.

Программисты могут создавать решения, используя VBA, который похож на Visual Basic 6.0 (VB6) и используется во всех программах Microsoft Office, таких как Excel , Word , Outlook и PowerPoint . Большая часть кода VB6, включая использование вызовов Windows API , может использоваться в VBA. Опытные пользователи и разработчики могут расширить базовые решения для конечных пользователей до профессионального решения с расширенной автоматизацией, проверкой данных , отловом ошибок и многопользовательской поддержкой.

Количество одновременно поддерживаемых пользователей зависит от объема данных, выполняемых задач , уровня использования и дизайна приложения . Обычно принятые ограничения - это решения с объемом данных 1 ГБ или меньше (Access поддерживает до 2 ГБ), и он достаточно хорошо работает при 100 или меньшем количестве одновременных подключений (поддерживается 255 одновременных пользователей). Эта возможность часто подходит для решений отдела. При использовании решения базы данных Access в многопользовательском сценарии приложение должно быть «разделено». Это означает, что таблицы находятся в одном файле, который называется серверной частью (обычно хранится в общей сетевой папке), а компоненты приложения (формы, отчеты, запросы, код, макросы, связанные таблицы) находятся в другом файле, который называется клиентской частью.. Связанные таблицы в интерфейсе указывают на файл серверной части. После этого каждый пользователь приложения Access получит свою копию файла внешнего интерфейса.

Приложения, выполняющие сложные запросы или анализ больших наборов данных, естественно, потребуют большей пропускной способности и памяти . Microsoft Access предназначен для масштабирования для поддержки большего количества данных и пользователей за счет связывания с несколькими базами данных Access или использования внутренней базы данных, такой как Microsoft SQL Server. В последнем случае объем данных и пользователи могут масштабироваться до решений корпоративного уровня.

Роль Microsoft Access в веб-разработке до версии 2010 ограничена. Функции пользовательского интерфейса Access, такие как формы и отчеты, работают только в Windows . В версиях с 2000 по 2003 год объектный тип Access, называемый страницами доступа к данным, создавал публикуемые веб-страницы. Страницы доступа к данным больше не поддерживаются. Microsoft Jet Database Engine , ядро для доступа, могут быть доступны с помощью технологий , таких как ODBC или OLE DB . Доступ к данным (т. Е. Таблицам и запросам) можно получить из веб-приложений, разработанных на ASP.NET , PHP или Java.. Используя службы терминалов Microsoft и приложение для удаленного рабочего стола в Windows Server 2008 R2, организации могут размещать приложения Access, чтобы их можно было запускать через Интернет. [26] Этот метод не масштабируется, как веб-приложение, но подходит для ограниченного числа пользователей в зависимости от конфигурации хоста.

Access 2010 позволяет публиковать базы данных на веб-сайтах SharePoint 2010, на которых работают службы Access. Эти веб-формы и отчеты запускаются в любом современном веб-браузере. Полученные веб-формы и отчеты при доступе через веб-браузер не требуют каких-либо надстроек или расширений (например, ActiveX, Silverlight ).

Access 2013 может создавать веб-приложения непосредственно на сайтах SharePoint 2013, на которых работают службы Access. Веб-решения Access 2013 хранят свои данные в базовой базе данных SQL Server, которая намного более масштабируема и надежна, чем версия Access 2010, в которой для хранения данных использовались списки SharePoint.

Службы Access в SharePoint были прекращены. [27]

Скомпилированная версия базы данных Access (расширения файлов: .MDE / ACCDE или .ADE; ACCDE работает только с Access 2007 или более поздней версии) может быть создана, чтобы запретить пользователю доступ к областям проектирования для изменения кода модуля, форм и отчетов. Файл MDE или ADE - это файл базы данных Microsoft Access, в котором все модули скомпилированы и весь редактируемый исходный код удален. Обе версии базы данных Access .MDE и .ADE используются, когда модификации конечного пользователя не разрешены или когда исходный код приложения должен оставаться конфиденциальным.

Microsoft также предлагает загружаемые расширения для разработчиков, которые помогают распространять приложения Access 2007, создавать шаблоны баз данных и интегрировать контроль исходного кода с Microsoft Visual SourceSafe .

Особенности [ править ]

Пользователи могут создавать таблицы, запросы, формы и отчеты и связывать их вместе с помощью макросов . Опытные пользователи могут использовать VBA для написания комплексных решений с расширенными возможностями обработки данных и пользовательского контроля. В Access также есть функции создания отчетов, которые могут работать с любым источником данных, к которому у Access есть доступ.

Первоначальная концепция Access заключалась в том, чтобы конечные пользователи могли получать доступ к данным из любого источника. Другие функции включают: импорт и экспорт данных во многие форматы, включая Excel , Outlook , ASCII , dBase , Paradox , FoxPro , SQL Server и Oracle . Он также имеет возможность связываться с данными в существующем местоположении и использовать их для просмотра, запроса, редактирования и составления отчетов. Это позволяет изменять существующие данные, гарантируя, что Access использует самые свежие данные. Он может выполнять разнородные соединения между наборами данных, хранящимися на разных платформах. Доступ часто используют люди, скачивающие данные изБазы данных корпоративного уровня для локального управления, анализа и отчетности.

Существует также формат базы данных 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 Engine . Эта поддержка началась с MSDE (Microsoft SQL Server Desktop Engine), уменьшенной версии Microsoft SQL Server 2000, и продолжается в версиях SQL Server Express для SQL Server 2005 и 2008.

Microsoft Access - это база данных на основе файлового сервера . В отличие от систем управления реляционными базами данных (СУБД) клиент-сервер , Microsoft Access не реализует триггеры базы данных , хранимые процедуры или ведение журнала транзакций . Access 2010 включает триггеры на уровне таблиц и хранимые процедуры, встроенные в подсистему данных ACE. Таким образом, система базы данных клиент-сервер не является обязательным требованием для использования хранимых процедур или триггеров таблиц с Access 2010. Таблицы, запросы, формы, отчеты и макросы теперь могут быть разработаны специально для веб-приложений в Access 2010. Интеграция с Microsoft SharePoint 2010 возможна. также сильно улучшился.

Версия Microsoft Access 2013 года представила в основном плоский дизайн и возможность установки приложений из Магазина Office, но не представила новых функций. Тема была снова частично обновлена ​​в 2016 году, но темная тема для Access создана не была.

Службы Access и веб-база данных [ править ]

Веб-формы ASP.NET могут запрашивать базу данных Microsoft Access, извлекать записи и отображать их в браузере. [28]

SharePoint Server 2010 через службы Access позволяет публиковать базы данных Access 2010 в SharePoint, что позволяет нескольким пользователям взаимодействовать с приложением базы данных из любого совместимого со стандартами веб-браузера. Веб-базы данных Access, опубликованные в SharePoint Server, могут использовать стандартные объекты, такие как таблицы, запросы, формы, макросы и отчеты. Службы Access хранят эти объекты в SharePoint. [29]

Access 2013 предлагает возможность публиковать веб-решения Access в SharePoint 2013. Вместо использования списков SharePoint в качестве источника данных Access 2013 использует фактическую базу данных SQL Server, размещенную в SharePoint или SQL Azure. [30] Это предлагает настоящую реляционную базу данных с ссылочной целостностью, масштабируемостью, ремонтопригодностью и расширяемостью по сравнению с используемыми в Access 2010 представлениями SharePoint. Макроязык усовершенствован для поддержки более сложной логики программирования и автоматизации на уровне базы данных. [24]

Импортировать или связать источники [ править ]

Microsoft Access также может импортировать данные, хранящиеся в других приложениях и базах данных, или напрямую связываться с ними. [3] Microsoft Office Access 2007 и новее можно импортировать из следующих источников или ссылаться на них:

  • Microsoft Access
  • Excel
  • Списки SharePoint
  • Простой текст
  • XML
  • Перспективы
  • HTML
  • dBase (удалено в Access 2013; восстановлено в Access 2016) [31]
  • Paradox (в Access 2007; пропало в Access 2010 [32] )
  • Lotus 1-2-3 (отсутствует в Access 2010 [32] )
  • Контейнеры данных, совместимые с ODBC , в том числе:
    • Microsoft SQL Server
    • Oracle
    • MySQL
    • PostgreSQL
    • IBM Lotus Notes
    • AS 400 DB2

Среда выполнения Microsoft Access [ править ]

Microsoft предлагает бесплатные исполняемые версии Microsoft Access, которые позволяют пользователям запускать настольное приложение Access без необходимости покупать или устанавливать розничную версию Microsoft Access. Фактически это позволяет разработчикам Access создавать базы данных, которые можно свободно распространять среди неограниченного числа конечных пользователей. Эти исполняемые версии Access 2007 и более поздних версий можно бесплатно загрузить с сайта Microsoft. [33] Версии среды выполнения для Access 2003 и ранее входили в состав Office Developer Extensions / Toolkit и требовали отдельной покупки.

Версия среды выполнения позволяет пользователям просматривать, редактировать и удалять данные, а также выполнять запросы, формы, отчеты, макросы и код модуля VBA. Версия среды выполнения не позволяет пользователям изменять дизайн таблиц Microsoft Access, запросов, форм, отчетов, макросов или кода модуля. Версии среды выполнения аналогичны соответствующей полной версии Access и обычно совместимы с более ранними версиями; например, Access Runtime 2010 позволяет пользователю запускать приложение Access, созданное с версией 2010, а также с 2007 по 2000 год. Из-за устаревших функций в Access 2013 его версия времени выполнения также не может поддерживать эти старые функции. Во время разработки можно смоделировать среду выполнения из полнофункциональной версии с помощью параметра /runtime командной строки . [34]

Развитие [ править ]

Access хранит все таблицы базы данных, запросы, формы, отчеты, макросы и модули в базе данных Access Jet в виде единого файла.

Для разработки запросов Access предлагает «Конструктор запросов», графический пользовательский интерфейс, который позволяет пользователям создавать запросы, не зная языка структурированных запросов. В конструкторе запросов пользователи могут «показать» источники данных запроса (которые могут быть таблицами или запросами) и выбрать поля, которые они хотят вернуть, щелкнув и перетащив их в сетку. Можно настроить объединения, щелкнув и перетащив поля в таблицах в поля в других таблицах. Access позволяет пользователям при желании просматривать код SQL и управлять им. В запросе можно использовать любую таблицу Access, включая связанные таблицы из разных источников данных.

Access также поддерживает создание «сквозных запросов». Эти фрагменты кода SQL могут обращаться к внешним источникам данных с помощью соединений ODBC на локальном компьютере. Это позволяет пользователям взаимодействовать с данными, хранящимися вне программы Access, без использования связанных таблиц или Jet. [35] Пользователи создают сквозные запросы, используя синтаксис SQL, поддерживаемый внешним источником данных.

При разработке отчетов (в «Представлении дизайна») дополнения или изменения элементов управления приводят к тому, что все связанные запросы выполняются в фоновом режиме, и разработчик вынужден ждать возврата записей, прежде чем сможет внести еще одно изменение. Эту функцию нельзя отключить.

Непрограммисты могут использовать функцию макросов для автоматизации простых задач с помощью ряда раскрывающихся списков. Макросы позволяют пользователям легко объединять команды вместе, такие как выполнение запросов, импорт или экспорт данных, открытие и закрытие форм, предварительный просмотр и печать отчетов и т. Д. Макросы поддерживают базовую логику (IF-условия) и возможность вызова других макросов. Макросы также могут содержать суб-макросы, похожие на подпрограммы. В Access 2007 расширенные макросы включали обработку ошибок и поддержку временных переменных . В Access 2007 также представлены встроенные макросы, которые по сути являются свойствами события объекта. Это устранило необходимость хранить макросы как отдельные объекты. Однако функциональность макросов была ограничена из-за отсутствия циклов программирования.и расширенная логика кодирования до Access 2013. Благодаря дальнейшим значительным улучшениям, представленным в Access 2013, возможности макросов стали полностью сопоставимы с VBA. Они сделали развертывание многофункциональных веб-приложений практичным с помощью значительно усовершенствованного интерфейса и инструментов Microsoft SharePoint, а также на традиционных настольных компьютерах Windows.

Как и другие продукты в пакете Microsoft Office, другим языком программирования, используемым в Access, является Microsoft VBA. Он похож на Visual Basic 6.0 (VB6), и код может храниться в модулях, классах и коде за формами и отчетами. Чтобы создать более богатый, более эффективный и удобный в обслуживании готовый продукт с хорошей обработкой ошибок, большинство профессиональных приложений Access разрабатываются с использованием языка программирования VBA, а не макросов, за исключением случаев, когда веб-развертывание является бизнес-требованием.

Для управления данными в таблицах и запросами в VBA или макросах Microsoft предоставляет две библиотеки доступа к базе данных компонентов COM :

  1. Объекты доступа к данным (DAO) (только 32-разрядные), которые включены в Access и Windows и преобразованы в ACE в Microsoft Access 2007 для формата базы данных ACCDE.
  2. Объекты данных ActiveX Объекты данных ActiveX (ADO) (как 32-разрядная, так и 64-разрядная версии)

Помимо DAO и ADO, разработчики также могут использовать OLE DB и ODBC для разработки собственных программ C / C ++ для Access. [36] Для ADP и прямого управления данными SQL Server требуется ADO. DAO наиболее подходит для управления данными в базах данных Access / Jet и является единственным способом управления сложными типами полей в таблицах ACCDB.

В контейнере базы данных или на панели навигации в Access 2007 и более поздних версиях система автоматически классифицирует каждый объект по типу (например, таблица, запрос, макрос). Многие разработчики Access используют соглашение об именах Лешинского , хотя оно не универсально; это соглашение о программировании, а не правило, применяемое СУБД. [37] [38] Это особенно полезно в VBA, где ссылки на имена объектов могут не указывать на их тип данных (например, tbl для таблиц, qry для запросов).

Разработчики развертывают Microsoft Access чаще всего для индивидуальных и групповых проектов (характеристика скорости Access 97 была сделана для 32 пользователей). [39] Начиная с Access 97 и с Access 2003 и 2007, Microsoft Access и оборудование претерпели значительные изменения. Базы данных размером менее 1 ГБ (которые теперь могут полностью уместиться в ОЗУ) и 200 одновременных пользователей вполне соответствуют возможностям Microsoft Access. [40] Конечно, производительность зависит от дизайна базы данных и задач. Работа с интенсивным использованием диска, такая как сложный поиск и запросы, занимает больше всего времени.

Поскольку данные из базы данных Microsoft Access можно кэшировать в ОЗУ, скорость обработки может существенно улучшиться, если есть только один пользователь или если данные не меняются. В прошлом влияние задержки пакетов на систему блокировки записей приводило к медленной работе баз данных Access в виртуальной частной сети (VPN) или глобальной сети (WAN) по отношению к базе данных Jet. По состоянию на 2010 г. широкополосные подключения смягчили эту проблему. Производительность также может быть повышена, если постоянное соединение с серверной базой данных поддерживается на протяжении всего сеанса, а не открывается и закрывается при каждом доступе к таблице. Если производительность базы данных Access через VPN или WAN снижается, то клиент, использующий протокол удаленного рабочего стола (например, MicrosoftСлужбы терминалов ) могут предоставить эффективное решение. Базы данных Access, связанные с SQL Server или проектами данных Access, хорошо работают [ необходима цитата ] через сети VPN и WAN.

В июле 2011 года Microsoft признала наличие периодической проблемы с производительностью запросов во всех версиях Access, а также Windows 7 и Windows Server 2008 R2 из-за того, что природа управления ресурсами сильно отличается в более новых операционных системах. [41] Эта проблема серьезно влияет на производительность запросов в Access 2003 и более ранних версиях с кодом ядра СУБД Jet , а также в Access 2007 и более поздних версиях с ядром СУБД Access (ACE). [41] Microsoft выпустила исправления KB2553029 для Access 2007 и KB2553116 для Access 2010, но не решит проблему с Jet 4.0, поскольку она не поддерживается в основном. [41]

В более ранних версиях Microsoft Access для распространения приложений требовалось приобретение Developer Toolkit; в Access 2007, 2010 и Access 2013 версия «Runtime Only» предлагается для бесплатной загрузки [42], что делает возможным распространение бесплатных приложений в Windows XP, Vista, 7 и Windows 8.x. [43]

Разделенная архитектура базы данных [ править ]

Приложения Microsoft Access могут использовать архитектуру с разделенной базой данных. Единую базу данных можно разделить на отдельный «серверный» файл, содержащий таблицы данных (совместно используемый на файловом сервере) и «интерфейсный» (содержащий объекты приложения, такие как запросы, формы, отчеты, макросы и модули). «Внешнее» приложение Access распространяется на рабочий стол каждого пользователя и связано с общей базой данных. Используя этот подход, у каждого пользователя есть копия Microsoft Access (или версия среды выполнения), установленная на их компьютере вместе с базой данных приложения. Это снижает сетевой трафик, поскольку приложение не загружается при каждом использовании. «Внешняя» база данных по-прежнему может содержать локальные таблицы для хранения пользовательских настроек или временных данных.Такая конструкция с разделенной базой данных также позволяет разрабатывать приложение независимо от данных. Одним из недостатков является то, что пользователи могут вносить различные изменения в свою локальную копию приложения, что затрудняет управление версиями. Когда новая версия готова, интерфейсная база данных заменяется без воздействия на базу данных. Microsoft Access имеет две встроенные утилиты Database Splitter.[44] и Linked Table Manager, чтобы упростить эту архитектуру.

Связанные таблицы в Access используют абсолютные пути, а не относительные пути, поэтому среда разработки должна иметь тот же путь, что и производственная среда, или подпрограмма «динамического компоновщика» может быть написана на VBA .

Для очень больших баз данных Access это может иметь проблемы с производительностью, и в этих обстоятельствах следует рассмотреть возможность использования серверной части SQL. Это не проблема, если вся база данных может поместиться в ОЗУ ПК, поскольку Access кэширует данные и индексы.

Миграция на SQL Server [ править ]

Один из возможных способов масштабирования приложений Access для корпоративных или веб-решений - это переход на Microsoft SQL Server или эквивалентную серверную базу данных. Конструкция клиент-сервер значительно сокращает обслуживание и увеличивает безопасность, доступность, стабильность и ведение журнала транзакций.

В Access 2000 через Access 2010 была включена функция под названием Upsizing Wizard, которая позволяла пользователям обновлять свои базы данных до Microsoft SQL Server, базы данных клиент-сервер ODBC. Эта функция была удалена из Access 2013. Дополнительное решение, помощник по миграции SQL Server для Access (SSMA), по-прежнему доступно для бесплатной загрузки с сайта Microsoft. [45]

Доступны различные варианты обновления. [46] После переноса данных и запросов на SQL Server базу данных Access можно связать с базой данных SQL. Однако некоторые типы данных проблематичны, в первую очередь «Да / Нет». В Microsoft Access существует три состояния для типа данных Да / Нет (Истина / Ложь): пустой, нет / ложь (ноль) и да / истина (-1). Соответствующий тип данных SQL Server является двоичным, только с двумя состояниями, допустимыми значениями, нулем и 1. Несмотря на это, 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, после преобразования данных. Однако любая миграция может потребовать больших усилий, поскольку язык Access SQL является более мощным надмножеством стандартного SQL. Кроме того, процедуры приложения Access, будь то VBA и макросы, написаны на относительно более высоком уровне по сравнению с доступными в настоящее время альтернативами, которые являются одновременно надежными и всеобъемлющими. Обратите внимание, что макроязык Access, обеспечивающий даже более высокий уровень абстракции, чем VBA, был значительно улучшен в Access 2010 и снова в Access 2013.

Во многих случаях разработчики создают прямые интерфейсы web-to-data с помощью ASP.NET, сохраняя при этом основные процессы автоматизации бизнеса, административные функции и функции отчетности, которые не нужно распространять среди всех в Access для обслуживания информационных работников.

Хотя все данные Access могут быть перенесены на SQL Server напрямую, некоторые запросы не могут быть успешно перенесены. В некоторых ситуациях вам может потребоваться перевести функции VBA и пользовательские функции в функции / процедуры T – SQL или .NET. Запросы кросс-таблицы можно перенести на SQL Server с помощью команды PIVOT.

Защита [ править ]

Приложения Microsoft Access можно защитить различными способами, самый простой из которых - контроль доступа по паролю; это относительно слабая форма защиты.

Более высокий уровень защиты - это использование безопасности рабочей группы, требующей имени пользователя и пароля . Пользователи и группы могут быть указаны вместе с их правами на уровне типа объекта или отдельного объекта. Это можно использовать для указания людей с правами только для чтения или ввода данных, но это может быть сложно указать. Отдельный файл безопасности рабочей группы содержит настройки, которые можно использовать для управления несколькими базами данных. Безопасность рабочих групп не поддерживается в формате базы данных ACCDB Access 2007 и Access 2010, хотя Access 2007 и Access 2010 по-прежнему поддерживают ее для баз данных MDB.

Базы данных также могут быть зашифрованы. Формат ACCDB предлагает значительно усовершенствованное шифрование по сравнению с предыдущими версиями. [47]

Кроме того, если необходимо защитить структуру базы данных для предотвращения изменений, базы данных Access можно заблокировать / защитить (и скомпилировать исходный код ) путем преобразования базы данных в файл .MDE. Все изменения в проекте VBA (модули, формы или отчеты) необходимо внести в исходный MDB, а затем повторно преобразовать в MDE. В Access 2007 и Access 2010 база данных ACCDB преобразована в файл ACCDE. Некоторые инструменты доступны для разблокировки и « декомпиляции », хотя некоторые элементы, включая оригинальные комментарии VBA и форматирование, обычно невозможно восстановить.

Расширения файлов [ править ]

Microsoft Access сохраняет информацию в файлах следующих форматов :

Версии [ править ]

Версии Access между 2.0 и 7.0 не существует, потому что версия Office 95 была запущена с Word 7. Все продукты Office 95 имеют возможности OLE 2, а Access 7 показывает, что он был совместим с Word 7.

Версия 13 была пропущена.

См. Также [ править ]

  • Сравнение систем управления реляционными базами данных
  • Форма (Интернет)
  • Инструменты MDB
  • Кекси

Ссылки [ править ]

  1. ^ «Примечания к выпуску для выпусков Current Channel в 2020 году» . Документы Microsoft . Проверено 19 июля 2020 года .
  2. Том Уоррен (24 сентября 2018 г.). «Microsoft запускает Office 2019 для Windows и Mac» . Грань . Проверено 25 декабря 2019 года .
  3. ^ a b «Введение в импорт и экспорт данных» . Microsoft . Проверено 15 октября 2010 года .
  4. ^ «История Microsoft Access» . Проверено 13 марта 2016 года .
  5. ^ a b c d Гудхью, Тони (1996). «Реактивный двигатель: история» . Проверено 2 января 2011 года .
  6. ^ a b c d Фергюсон, Скотт. «Рождение Visual Basic» .
  7. ^ Браунштейн, Марк; Джонстон, Стюарт Дж. (14 ноября 1988 г.). «Microsoft работает над базой данных SAA» . InfoWorld . п. .5.
  8. ^ Браунштейн, Марк (13 февраля 1989). «Microsoft добавляет последние штрихи к приложениям Windows» . InfoWorld . п. 5.
  9. Флинн, Лори (8 мая 1989 г.). «Приложения Microsoft для обмена макросами» . InfoWorld . п. 1.
  10. Флинн, Лори (21 августа 1989 г.). «Microsoft ждет на переднем плане SQL» . InfoWorld . п. 109.
  11. ^ Cringely, Роберт Х. (4 сентября 1989). «Гейтс утверждает, что системы 80286 больше не его детище» . InfoWorld . п. 82.
  12. ^ Cringely, Роберт Х. (31 июля 1989). «Ни в коем случае, в компьютерной индустрии всегда будет доминировать Doritos» . InfoWorld . п. 86.
  13. ^ Cringely, Роберт Х. (16 октября 1989). «Lotus Exec рассказывает об испытаниях:« Инопланетяне вынуждают меня использовать MS Windows » » . InfoWorld . п. 106.
  14. ^ Cringely, Роберт Х. (20 ноября 1989). «Элвис, теперь обслуживающий парковку в Вегасе, еще больше задерживает Intel 486» . InfoWorld . п. 106.
  15. Мейс, Скотт (30 ноября 1992 г.). «Microsoft демонстрирует свою злополучную Омегу» . InfoWorld . п. 16.
  16. ^ Пикарил, Лиза; Мейс, Скотт (30 марта 1992 г.). «Покупка Microsoft Fox взбудоражила рынок XBase» . InfoWorld . п. 1. Cirrus (...) будет лицом к лицу с программой Metaphor компьютерных систем Paradox и Metaphor.
  17. ^ Cringely, Роберт Х. (4 ноября 1991). «Какой бы костюм ни носил Экхард, он может напугать Silicon Graphics» . InfoWorld . п. 118. (...) слух (...), что FoxPro может заменить давно откладывающуюся базу данных Редмонда, теперь под кодовым названием Cirrus.
  18. Мейс, Скотт (29 июня 1992 г.). «Microsoft создает API для дополнения ODBC» . InfoWorld . п. 1. Поддержка Open ISAM будет в будущей СУБД Microsoft Cirrus для Windows.
  19. ^ «Разработчики получают бета-версию СУБД Microsoft» . InfoWorld . 13 июля 1992 г. с. 3.
  20. Джонстон, Стюарт Дж. (20 июля 1998 г.). «Cirrus получил название Access; выпущена более быстрая бета-версия» . InfoWorld . п. 1.
  21. ^ "Откуда взялось название Microsoft Access?" . Старая новая вещь . Microsoft . Проверено 13 марта 2016 года .
  22. ^ Ошибка «Недостаточно памяти» при запуске Microsoft Access
  23. ^ «Изменения в доступе» . Microsoft . Проверено 13 марта 2016 года .
  24. ^ a b «Новое в Access для разработчиков» . Microsoft . Проверено 13 марта 2016 года .
  25. ^ «Снятые с производства и измененные функции в Access 2013» . Microsoft . Проверено 13 марта 2016 года .
  26. ^ «Использование служб терминалов и RemoteApp для расширения доступа к Microsoft и другим приложениям Windows через Интернет» . Проверено 13 марта 2016 года .
  27. ^ «Доступ к службам в SharePoint Roadmap» . Microsoft . Проверено 20 мая 2019 года .
  28. ^ «Создание веб-форм ASP.NET для использования базы данных Microsoft Access» . Проверено 13 июня 2017 года .
  29. ^ «Создание веб-баз данных с помощью Access 2010 и служб Access» . Msdn.microsoft.com. 22 июля 2009 . Проверено 24 апреля 2013 года .
  30. ^ «Веб-приложения и примеры Microsoft Access 2013» . access-templates.com . Проверено 4 сентября 2017 года .
  31. ^ «По многочисленным просьбам - поддержка файлов dBASE в Access» . Офисные блоги . Microsoft . 7 сентября 2016 . Проверено 20 августа 2017 года .
  32. ^ a b «Снятые с производства и измененные функции в Access 2010» . Office.com . Microsoft . Проверено 17 января 2014 года .
  33. ^ «Распространение среды выполнения Microsoft Access и бесплатные загрузки» . Проверено 15 июня, 2016 .
  34. ^ «Моделирование среды выполнения Microsoft Access во время разработки» . Проверено 15 июня, 2016 .
  35. Перейти ↑ Sinclair, Russell (2000). От доступа к SQL серверу . Серия "Апресс". Апресс. п. 39. ISBN 978-1-893115-24-8. Проверено 8 июля 2010 года . Сквозные запросы SQL - это запросы, в которых вы можете ввести оператор, который передается непосредственно драйверу ODBC, без проверки или анализа Jet Engine.
  36. Александр Якшич (август 2008 г.). «Разработка решений Access 2007 с использованием собственного C или C ++» . Корпорация Microsoft . Проверено 22 сентября 2008 года .
  37. ^ «Соглашения об именах» . Microsoft . Проверено 13 марта 2016 года .
  38. ^ Соглашения об именах для Visual Basic
  39. ^ Кевин Коллинз ( Управление программами Microsoft Jet), «Обзор производительности и методы оптимизации Microsoft Jet 3.5», MSDN. Проверено 19 июля 2005 года.
  40. ^ «Масштабируемость базы данных Microsoft Access: сколько пользователей она может поддерживать?» . Блог команды разработчиков программного обеспечения FMS . Проверено 13 марта 2016 года .
  41. ^ a b c Очень медленный запрос Access 2002 в Windows 7
  42. ^ «Программы распространения среды выполнения Microsoft Access и бесплатные загрузки» . Проверено 13 марта 2016 года .
  43. ^ «Загрузите среду выполнения Microsoft Access 2010 из официального центра загрузки Microsoft» . Microsoft . Проверено 13 марта 2016 года .
  44. ^ «Разделенная архитектура базы данных Microsoft Access для поддержки многопользовательских сред, повышения производительности и упрощения обслуживания» . Fmsinc.com . Проверено 24 апреля 2013 года .
  45. ^ «Помощник по миграции Microsoft SQL Server 7.10 для доступа» . Microsoft.com . Проверено 20 октября 2018 года .
  46. ^ «Когда и как преобразовать базы данных Microsoft Access в SQL Server» . Проверено 13 марта 2016 года .
  47. ^ «Соображения безопасности и руководство для Access 2007» . Microsoft . Проверено 13 марта 2016 года .
  48. ^ «Информация о жизненном цикле Microsoft Access» . Проверено 23 октября 2011 года .
  49. ^ a b c d «Выпуски версий Microsoft Access, пакеты обновлений, исправления и история обновлений» . ФМС . Проверено 20 июля 2015 года .
  50. ^ «Глава 5 - Системные требования для MS Office» . Пакет ресурсов Office 97 . Microsoft . Проверено 2 мая 2013 года .
  51. ^ «Системные требования Office 2000» . Веб-сайт Microsoft Office . Microsoft. Архивировано из оригинального 2 февраля 2012 года . Проверено 2 мая 2013 года .
  52. ^ «Системные требования Office XP» . Веб-сайт Microsoft Office . Microsoft. Архивировано из оригинала на 4 марта 2013 года . Проверено 2 мая 2013 года .
  53. ^ «Лицензирование Office 2003 и системные требования» . Веб-сайт Microsoft Office . Microsoft. Архивировано из оригинального 15 июня 2013 года . Проверено 2 мая 2013 года .
  54. ^ «Начало работы с системой Office 2007» . Microsoft TechNet . Microsoft. 28 апреля 2009 . Проверено 2 мая 2013 года .
  55. ^ «Системные требования для Office 2010» . Microsoft TechNet . Microsoft. 19 февраля 2013 . Проверено 2 мая 2013 года .
  56. ^ «Системные требования для Office 2013» . Microsoft TechNet . Microsoft. 16 декабря 2016 . Проверено 15 августа 2017 года .
  57. ^ «Microsoft Access 2016» . Microsoft . Microsoft.
  58. ^ «Microsoft Access 2019» . Microsoft . Microsoft.
  • Эта статья основана на материалах, взятых из Free On-line Dictionary of Computing до 1 ноября 2008 г. и включенных в соответствии с условиями «перелицензирования» GFDL версии 1.3 или новее.

Внешние ссылки [ править ]

  • Официальный веб-сайт
  • Доступ к блогу
  • Выпуски версий Microsoft Access, пакеты обновлений, исправления и история обновлений