stringtranslate.com

acceso Microsoft

Microsoft Access es un sistema de gestión de bases de datos (DBMS) de Microsoft que combina el motor de base de datos de Access (ADE) relacional con una interfaz gráfica de usuario y herramientas de desarrollo de software. Es miembro del conjunto de aplicaciones Microsoft 365 , incluido en las ediciones Professional y superiores o se vende por separado.

Microsoft Access almacena datos en su propio formato basado en Access Database Engine (anteriormente Jet Database Engine). También puede importar o vincular directamente a datos almacenados en otras aplicaciones y bases de datos. [6]

Los desarrolladores de software , arquitectos de datos y usuarios avanzados pueden utilizar Microsoft Access para desarrollar software de aplicaciones . Al igual que otras aplicaciones de Microsoft Office, Access es compatible con Visual Basic para Aplicaciones (VBA), un lenguaje de programación basado en objetos que puede hacer referencia a una variedad de objetos, incluidos los DAO (objetos de acceso a datos) heredados, objetos de datos ActiveX y muchos otros componentes ActiveX. . Los objetos visuales utilizados en formularios e informes exponen sus métodos y propiedades en el entorno de programación VBA, y los módulos de código VBA pueden declarar y llamar operaciones del sistema operativo Windows.

Historia

Antes de la introducción de Access, Borland (con Paradox ), Ashton-Tate (con dBase , adquirida por Borland en 1991) y Fox (con FoxPro ) dominaban el mercado de bases de datos de escritorio. Microsoft Access fue el primer programa de base de datos de mercado masivo para Windows. Con la compra de FoxPro por parte de Microsoft en 1992 y la incorporación de las rutinas de optimización de consultas Rushmore de Fox en Access, Microsoft Access rápidamente se convirtió en la base de datos dominante para Windows, eliminando efectivamente la competencia que no logró la transición del mundo MS-DOS . [7] En la década de 1980, Microsoft Access se refería a un programa de telecomunicaciones no relacionado que proporcionaba emulación de terminal e interfaces para facilitar su uso al acceder a servicios en línea como Dow Jones , Compuserve y buzones de correo electrónico. [8] [9]

Proyecto Omega

El primer intento de Microsoft de vender un producto de base de datos relacional fue a mediados de la década de 1980, cuando Microsoft obtuvo la licencia para vender R:Base . [10] A finales de la década de 1980, Microsoft desarrolló su propia solución con el nombre en código Omega. [11] En 1988 se confirmó que se estaba desarrollando un producto de base de datos para Windows y OS/2 . [12] [13] Iba a incluir el lenguaje Embedded Basic "EB", [11] que iba a ser el lenguaje para escribir macros en todas las aplicaciones de Microsoft, [14] pero la unificación de los lenguajes de macros no se produjo hasta la introducción de Visual Basic para Aplicaciones (VBA). También se esperaba que Omega proporcionara una interfaz para Microsoft SQL Server . [15] La aplicación consumía muchos recursos y hubo informes de que funcionaba lentamente en los 386 procesadores que estaban disponibles en ese momento. [16] Su lanzamiento estaba previsto para el primer trimestre de 1990, [17] pero en 1989 se reinició el desarrollo del producto [10] [18] y se reprogramó para su entrega no antes de enero de 1991. [ 19] Partes del proyecto se usaron más tarde para otros proyectos de Microsoft: Cirrus (nombre en clave para Access) y Thunder (nombre en clave para Visual Basic , donde se usó el motor Embedded Basic). [10] [11] Después del estreno de Access, el proyecto Omega se demostró en 1992 a varios periodistas e incluía funciones que no estaban disponibles en Access. [20]

Proyecto Cirrus

Después de que el proyecto Omega fue descartado, algunos de sus desarrolladores fueron asignados al proyecto Cirrus (la mayoría fueron asignados al equipo que creó Visual Basic). [10] Su objetivo era crear un competidor para aplicaciones como Paradox o dBase que funcionaran en Windows. [21] Después de que Microsoft adquirió FoxPro , hubo rumores de que el proyecto de Microsoft podría ser reemplazado por él, [22] pero la compañía decidió desarrollarlos en paralelo. Se supuso que el proyecto utilizaría Extensible Storage Engine (Jet Blue) [23] pero, al final, solo se proporcionó soporte para Jet Database Engine (Jet Red). El proyecto utilizó parte del código tanto del proyecto Omega como de una versión preliminar de Visual Basic. [11] En julio de 1992, se enviaron versiones beta de Cirrus a los desarrolladores [24] y el nombre Access se convirtió en el nombre oficial del producto. [25] "Access" se usó originalmente para un programa de emulación de terminal más antiguo de Microsoft. Años después de que se abandonara el programa, decidieron reutilizar el nombre aquí. [26]

Línea de tiempo

Logotipo de Access para Office 2000 y Office XP

Microsoft lanzó la versión 1.0 de Access el 13 de noviembre de 1992 y una versión 1.1 de Access en mayo de 1993 para mejorar la compatibilidad con otros productos de Microsoft e incluir el lenguaje de programación Access Basic.

Con Access v2.0, Microsoft especificó que los requisitos mínimos de hardware eran Microsoft Windows v3.1 con 4 MB de RAM requeridos, se recomiendan 6 MB de RAM; Se requieren 8 MB de espacio disponible en el disco duro , se recomiendan 14 MB de espacio en el disco duro. El producto se envió en siete disquetes de 1,44 MB. El manual muestra una fecha de copyright de 1994.

Como parte de Microsoft Office 4.3 Professional con Book Shelf, se incluyó Microsoft Access 2.0 con las primeras bases de datos de muestra "NorthWind Trader", que cubría todos los aspectos posibles de la programación de su propia base de datos. La muestra de Northwind Traders introdujo por primera vez las características del tablero de control principal nuevas en Access 2.0 para 1994. La foto de Andrew Fuller, registro número 2 de esa base de datos de muestra, fue la persona que presentó y trabajó con Microsoft para proporcionar una base de datos de ejemplo tan sobresaliente.

Con Office 95, Microsoft Access 7.0 (también conocido como "Access 95") pasó a formar parte de Microsoft Office Professional Suite, uniéndose a Microsoft Excel, Word y PowerPoint y pasando de Access Basic a VBA. Desde entonces, Microsoft ha lanzado nuevas versiones de Microsoft Access con cada versión de Microsoft Office. Esto incluye Access 97 (versión 8.0), Access 2000 (versión 9.0), Access 2002 (versión 10.0), Access 2003 (versión 11.5), Access 2007 (versión 12.0), Access 2010 (versión 14.0), Access 2013 (versión 15.0). y Access 2016 (versión 16.0). [27]

Las versiones 3.0 y 3.5 de Jet Database Engine (utilizadas por Access 7.0 y Access 97, lanzado posteriormente, respectivamente) tenían un problema crítico que hacía que estas versiones de Access fueran inutilizables en una computadora con más de 1 GB de memoria. [28] Si bien Microsoft solucionó este problema para Jet 3.5/Access 97 después del lanzamiento, nunca solucionó el problema con Jet 3.0/Access 95.

El formato de base de datos nativo de Access (la base de datos Jet MDB) también ha evolucionado a lo largo de los años. Los formatos incluyen Access 1.0, 1.1, 2.0, 7.0, 97, 2000, 2002 y 2007. La transición más significativa fue del formato Access 97 al Access 2000; que no es compatible con versiones anteriores de Access. A partir de 2011, todas las versiones más recientes de Access admiten el formato Access 2000. Se agregaron nuevas funciones al formato Access 2002 que pueden usarse en Access 2002, 2003, 2007 y 2010.

Microsoft Access 2000 aumentó el tamaño máximo de la base de datos a 2 GB desde 1 GB en Access 97.

Microsoft Access 2007 introdujo un nuevo formato de base de datos: ACCDB. Admite vínculos a listas de SharePoint y tipos de datos complejos , como campos de valores múltiples y adjuntos. Estos nuevos tipos de campos son esencialmente conjuntos de registros en campos y permiten el almacenamiento de múltiples valores o archivos en un campo. Microsoft Access 2007 también introdujo el campo Archivo adjunto, que almacenaba datos de manera más eficiente que el campo OLE (Vinculación e incrustación de objetos) .

El logo de Access de 2013 a 2019

Microsoft Access 2010 introdujo una nueva versión del formato ACCDB que admite el alojamiento de servicios web de Access en un servidor SharePoint 2010. Por primera vez, esto permitió ejecutar aplicaciones de Access sin tener que instalar Access en la PC de un usuario y fue el primer soporte para usuarios de Mac. Cualquier usuario del sitio de SharePoint con derechos suficientes podría utilizar el servicio web Access. Aún se necesitaba una copia de Access para que el desarrollador creara el servicio web de Access, y la versión de escritorio de Access seguía siendo parte de Access 2010. Los servicios web de Access no eran los mismos que las aplicaciones de escritorio. La automatización se realizó únicamente a través del lenguaje de macros (no VBA) que Access convirtió automáticamente a JavaScript. Los datos ya no estaban en una base de datos de Access sino en listas de SharePoint. Una base de datos de escritorio de Access podría vincularse a los datos de SharePoint, por lo que las aplicaciones híbridas eran posibles para que los usuarios de SharePoint que necesitaban vistas y ediciones básicas pudieran ser compatibles, mientras que las aplicaciones tradicionales más sofisticadas podían permanecer en la base de datos de Access de escritorio.

Microsoft Access 2013 ofrece aplicaciones de escritorio tradicionales de Access además de un servicio web SharePoint 2013 significativamente actualizado. [29] El modelo Access Web en Access 2010 fue reemplazado por una nueva arquitectura que almacena sus datos en bases de datos reales de SQL Server. A diferencia de las listas de SharePoint, esto ofrece un verdadero diseño de base de datos relacional con integridad referencial, escalabilidad, extensibilidad y rendimiento que uno esperaría de SQL Server. [30] Las soluciones de bases de datos que se pueden crear en SharePoint 2013 ofrecen una interfaz de usuario moderna diseñada para mostrar múltiples niveles de relaciones que se pueden ver y editar, además de cambiar el tamaño para diferentes dispositivos y soporte táctil. El escritorio de Access 2013 es similar a Access 2010, pero se suspendieron varias funciones, incluida la compatibilidad con proyectos de datos de Access (ADP), [ se necesita aclaración ] tablas dinámicas, gráficos dinámicos, colecciones de datos de Access, control de código fuente, replicación y otras funciones heredadas. [31] El tamaño máximo de la base de datos de Access Desktop se mantuvo en 2 GB (como ha sido desde la versión 2000).

Microsoft Access ya no está incluido en la versión de compra única de Microsoft Office 2021 , pero permanece dentro de la contraparte de Microsoft 365 , como aplicaciones para empresas y ediciones Business Standard. Las características nuevas de Access 2021 incluyen un tipo de datos de fecha/hora de precisión extendida [32] y compatibilidad con temas oscuros. [33]

Usos

Además de utilizar su propio archivo de almacenamiento de base de datos, Microsoft Access también se puede utilizar como 'front-end' de un programa, mientras que otros productos actúan como tablas 'back-end', como Microsoft SQL Server y productos que no son de Microsoft, como como Oracle y Sybase . Una base de datos Microsoft Access Jet puede utilizar varias fuentes de backend (formatos ACCDB y MDB). De manera similar, algunas aplicaciones como Visual Basic , ASP.NET o Visual Studio .NET utilizarán el formato de base de datos de Microsoft Access para sus tablas y consultas. Microsoft Access también puede ser parte de una solución más compleja, donde puede integrarse con otras tecnologías como Microsoft Excel , Microsoft Outlook , Microsoft Word , Microsoft PowerPoint y controles ActiveX .

Las tablas de Access admiten una variedad de tipos de campos estándar, índices e integridad referencial, incluidas actualizaciones y eliminaciones en cascada . Access también incluye una interfaz de consulta , formularios para mostrar e ingresar datos e informes para imprimir. La base de datos de Access subyacente , que contiene estos objetos, es multiusuario y maneja el bloqueo de registros .

Las tareas repetitivas se pueden automatizar mediante macros con opciones de apuntar y hacer clic . También es fácil colocar una base de datos en una red y hacer que varios usuarios compartan y actualicen datos sin sobrescribir el trabajo de los demás. Los datos se bloquean a nivel de registro , lo que es significativamente diferente de Excel, que bloquea toda la hoja de cálculo.

Hay bases de datos de plantillas dentro del programa y para descargar desde el sitio web de Microsoft. Estas opciones están disponibles al iniciar Access y permiten a los usuarios mejorar una base de datos con tablas, consultas , formularios, informes y macros predefinidos. Las plantillas de bases de datos admiten código VBA , pero las plantillas de Microsoft no incluyen código VBA.

Los programadores pueden crear soluciones utilizando VBA, que es similar a Visual Basic 6.0 (VB6) y se utiliza en todos los programas de Microsoft Office como Excel , Word , Outlook y PowerPoint . La mayor parte del código VB6, incluido el uso de llamadas API de Windows , se puede utilizar en VBA. Los usuarios avanzados y los desarrolladores pueden ampliar las soluciones básicas para el usuario final a una solución profesional con automatización avanzada, validación de datos , captura de errores y soporte multiusuario.

La cantidad de usuarios simultáneos que se pueden admitir depende de la cantidad de datos, las tareas que se realizan, el nivel de uso y el diseño de la aplicación . Los límites generalmente aceptados son soluciones con 1 GB o menos de datos (Access admite hasta 2 GB) y funciona bastante bien con 100 o menos conexiones simultáneas (se admiten 255 usuarios simultáneos). [34] Esta capacidad suele ser una buena opción para las soluciones departamentales. Si utiliza una solución de base de datos de Access en un escenario multiusuario, la aplicación debe estar "dividida". Esto significa que las tablas están en un archivo llamado back-end (normalmente almacenado en una carpeta de red compartida) y los componentes de la aplicación (formularios, informes, consultas, código, macros, tablas vinculadas) están en otro archivo llamado front- end . Las tablas vinculadas en el front-end apuntan al archivo de back-end. Cada usuario de la aplicación Access recibiría su propia copia del archivo frontal.

Las aplicaciones que ejecutan consultas o análisis complejos en grandes conjuntos de datos naturalmente requerirían mayor ancho de banda y memoria . Microsoft Access está diseñado para escalar y admitir más datos y usuarios mediante la vinculación a múltiples bases de datos de Access o el uso de una base de datos de back-end como Microsoft SQL Server. Con este último diseño, la cantidad de datos y usuarios se puede escalar a soluciones de nivel empresarial.

El papel de Microsoft Access en el desarrollo web antes de la versión 2010 es limitado. Las funciones de la interfaz de usuario de Access, como formularios e informes, solo funcionan en Windows . En las versiones 2000 a 2003, un tipo de objeto de Access llamado Páginas de acceso a datos creaba páginas web publicables. Las páginas de acceso a datos ya no son compatibles. Se puede acceder a Jet Database Engine , núcleo de Access, a través de tecnologías como ODBC u OLE DB . Se puede acceder a los datos (es decir, tablas y consultas) mediante aplicaciones basadas en web desarrolladas en ASP.NET , PHP o Java . Con el uso de los Servicios de Terminal Server y la Aplicación de Escritorio Remoto de Microsoft en Windows Server 2008 R2, las organizaciones pueden alojar aplicaciones de Access para que puedan ejecutarse a través de la web. [35] Esta técnica no escala como lo haría una aplicación web, pero es apropiada para un número limitado de usuarios dependiendo de la configuración del host.

Access 2010 permite publicar bases de datos en sitios web de SharePoint 2010 que ejecutan servicios de Access. Estos formularios e informes basados ​​en web se ejecutan en cualquier navegador web moderno. Los formularios e informes web resultantes, cuando se accede a ellos a través de un navegador web, no requieren complementos ni extensiones (por ejemplo, ActiveX y Silverlight ).

Access 2013 puede crear aplicaciones web directamente en sitios de SharePoint 2013 que ejecutan Servicios de Access. Las soluciones web de Access 2013 almacenan sus datos en una base de datos de SQL Server subyacente que es mucho más escalable y robusta que la versión de Access 2010 que usaba listas de SharePoint para almacenar sus datos.

Desde entonces, los servicios de Access en SharePoint se han retirado. [36]

Se puede crear una versión compilada de una base de datos de Access (extensiones de archivo .MDE /ACCDE o .ADE; ACCDE solo funciona con Access 2007 o posterior) para evitar que los usuarios accedan a las superficies de diseño para modificar el código del módulo, los formularios y los informes. Un archivo MDE o ADE es un archivo de base de datos de Microsoft Access con todos los módulos compilados y todo el código fuente editable eliminado. Tanto la versión .MDE como la .ADE de una base de datos de Access se utilizan cuando no se permiten modificaciones por parte del usuario final o cuando el código fuente de la aplicación debe mantenerse confidencial.

Microsoft también ofrece extensiones de desarrollador para descargar para ayudar a distribuir aplicaciones de Access 2007, crear plantillas de bases de datos e integrar el control del código fuente con Microsoft Visual SourceSafe .

Características

Los usuarios pueden crear tablas, consultas, formularios e informes, y conectarlos con macros . Los usuarios avanzados pueden utilizar VBA para escribir soluciones enriquecidas con manipulación de datos avanzada y control del usuario. Access también tiene funciones de creación de informes que pueden funcionar con cualquier fuente de datos a la que Access pueda acceder.

El concepto original de Access era que los usuarios finales pudieran acceder a datos desde cualquier fuente. Otras características incluyen: la importación y exportación de datos a muchos formatos, incluidos Excel , Outlook , ASCII , dBase , Paradox , FoxPro , SQL Server y Oracle . También tiene la capacidad de vincular datos en su ubicación existente y usarlos para verlos, consultarlos, editarlos y generar informes. Esto permite que los datos existentes cambien y al mismo tiempo garantiza que Access utilice los datos más recientes. Puede realizar uniones heterogéneas entre conjuntos de datos almacenados en diferentes plataformas. El acceso lo suelen utilizar personas que descargan datos de bases de datos de nivel empresarial para manipularlos, analizarlos y generar informes localmente.

También existe el formato de base de datos de Access (ACE y anteriormente Jet) (MDB o ACCDB en Access 2007) que puede contener la aplicación y los datos en un solo archivo. Esto hace que sea muy conveniente distribuir la aplicación completa a otro usuario, quien puede ejecutarla en entornos desconectados.

Uno de los beneficios de Access desde la perspectiva de un programador es su relativa compatibilidad con SQL ( lenguaje de consulta estructurado ): las consultas se pueden ver gráficamente o editar como declaraciones SQL, y las declaraciones SQL se pueden usar directamente en macros y módulos VBA para manipular tablas de Access. Los usuarios pueden mezclar y utilizar VBA y "Macros" para programar formas y lógica y ofrece posibilidades orientadas a objetos . VBA también se puede incluir en las consultas.

Microsoft Access ofrece consultas parametrizadas . Se puede hacer referencia a estas consultas y tablas de Access desde otros programas como VB6 y .NET a través de DAO o ADO . Desde Microsoft Access, VBA puede hacer referencia a procedimientos almacenados parametrizados a través de ADO.

Las ediciones de escritorio de Microsoft SQL Server se pueden utilizar con Access como alternativa al Jet Database Engine . Este soporte comenzó con MSDE (Microsoft SQL Server Desktop Engine), una versión reducida de Microsoft SQL Server 2000, y continúa con las versiones SQL Server Express de SQL Server 2005 y 2008.

Microsoft Access es una base de datos basada en un servidor de archivos . A diferencia de los sistemas de administración de bases de datos relacionales (RDBMS) cliente-servidor , Microsoft Access no implementa activadores de bases de datos , procedimientos almacenados ni registros de transacciones . Access 2010 incluye activadores a nivel de tabla y procedimientos almacenados integrados en el motor de datos ACE. Por lo tanto, un sistema de base de datos cliente-servidor no es un requisito para utilizar procedimientos almacenados o activadores de tablas con Access 2010. Ahora se pueden desarrollar tablas, consultas, formularios, informes y macros específicamente para aplicaciones basadas en web en Access 2010. La integración con Microsoft SharePoint 2010 es También muy mejorado.

La edición 2013 de Microsoft Access introdujo un diseño mayoritariamente plano y la capacidad de instalar aplicaciones desde Office Store, pero no introdujo nuevas funciones. El tema se actualizó parcialmente nuevamente para 2016, pero no se creó ningún tema oscuro para Access.

Servicios de acceso y base de datos web.

Los formularios web ASP.NET pueden consultar una base de datos de Microsoft Access, recuperar registros y mostrarlos en el navegador. [37]

SharePoint Server 2010 a través de Access Services permite que las bases de datos de Access 2010 se publiquen en SharePoint, lo que permite que varios usuarios interactúen con la aplicación de base de datos desde cualquier navegador web compatible con los estándares. Las bases de datos web de Access publicadas en SharePoint Server pueden utilizar objetos estándar como tablas, consultas, formularios, macros e informes. Servicios de Access almacena esos objetos en SharePoint. [38]

Access 2013 ofrece la posibilidad de publicar soluciones web de Access en SharePoint 2013. En lugar de utilizar listas de SharePoint como origen de datos, Access 2013 utiliza una base de datos de SQL Server real alojada en SharePoint o SQL Azure. [39] Esto ofrece una verdadera base de datos relacional con integridad referencial, escalabilidad, mantenibilidad y extensibilidad en comparación con las vistas de SharePoint utilizadas en Access 2010. El lenguaje de macros se ha mejorado para admitir una lógica de programación más sofisticada y una automatización a nivel de base de datos. [30]

Importar o vincular fuentes

Microsoft Access también puede importar o vincular directamente a datos almacenados en otras aplicaciones y bases de datos. [6] Microsoft Office Access 2007 y versiones posteriores pueden importar o vincular a:

Tiempo de ejecución de Microsoft Access

Microsoft ofrece versiones de ejecución gratuitas de Microsoft Access que permiten a los usuarios ejecutar una aplicación de escritorio de Access sin necesidad de comprar o instalar una versión comercial de Microsoft Access. En realidad, esto permite a los desarrolladores de Access crear bases de datos que se pueden distribuir libremente a un número ilimitado de usuarios finales. Estas versiones en tiempo de ejecución de Access 2007 y posteriores se pueden descargar de forma gratuita desde Microsoft. [42] Las versiones de tiempo de ejecución para Access 2003 y anteriores formaban parte de Office Developer Extensions/Toolkit y requerían una compra por separado.

La versión en tiempo de ejecución permite a los usuarios ver, editar y eliminar datos, además de ejecutar consultas, formularios, informes, macros y código de módulo VBA. La versión en tiempo de ejecución no permite a los usuarios cambiar el diseño de tablas, consultas, formularios, informes, macros o código de módulo de Microsoft Access. Las versiones en tiempo de ejecución son similares a su correspondiente versión completa de Access y normalmente son compatibles con versiones anteriores; por ejemplo, Access Runtime 2010 permite a un usuario ejecutar una aplicación de Access creada con la versión 2010, así como con las versiones 2007 a 2000. Debido a las funciones obsoletas de Access 2013, su versión de tiempo de ejecución tampoco admite esas funciones más antiguas. Durante el desarrollo, se puede simular el entorno de ejecución desde la versión completamente funcional utilizando la /runtime opción de línea de comandos . [43]

Desarrollo

Access almacena todas las tablas de bases de datos, consultas, formularios, informes, macros y módulos en la base de datos de Access Jet como un solo archivo.

Para el desarrollo de consultas, Access ofrece un "Diseñador de consultas", una interfaz gráfica de usuario que permite a los usuarios crear consultas sin conocimientos de lenguaje de consulta estructurado. En el Diseñador de consultas, los usuarios pueden "mostrar" las fuentes de datos de la consulta (que pueden ser tablas o consultas) y seleccionar los campos que desean que se devuelvan haciendo clic y arrastrándolos a la cuadrícula. Se pueden configurar uniones haciendo clic y arrastrando campos en tablas a campos en otras tablas. Access permite a los usuarios ver y manipular el código SQL si lo desean. En una consulta se puede utilizar cualquier tabla de Access, incluidas las tablas vinculadas de diferentes fuentes de datos.

Access también admite la creación de "consultas de paso". Estos fragmentos de código SQL pueden abordar fuentes de datos externas mediante el uso de conexiones ODBC en la máquina local. Esto permite a los usuarios interactuar con datos almacenados fuera del programa Access sin utilizar tablas vinculadas o Jet. [44] Los usuarios construyen las consultas de paso utilizando la sintaxis SQL compatible con la fuente de datos externa.

Al desarrollar informes (en la "Vista Diseño"), las adiciones o cambios a los controles hacen que las consultas vinculadas se ejecuten en segundo plano y el diseñador se ve obligado a esperar a que se devuelvan los registros antes de poder realizar otro cambio. Esta característica no se puede desactivar.

Los no programadores pueden utilizar la función de macros para automatizar tareas simples a través de una serie de selecciones desplegables. Las macros permiten a los usuarios encadenar fácilmente comandos, como ejecutar consultas, importar o exportar datos, abrir y cerrar formularios, obtener una vista previa e imprimir informes, etc. Las macros admiten la lógica básica (condiciones IF) y la capacidad de llamar a otras macros. Las macros también pueden contener submacros que son similares a las subrutinas. En Access 2007, las macros mejoradas incluían manejo de errores y soporte para variables temporales . Access 2007 también introdujo macros integradas que son esencialmente propiedades del evento de un objeto. Esto eliminó la necesidad de almacenar macros como objetos individuales. Sin embargo, las macros tenían una funcionalidad limitada por la falta de bucles de programación y lógica de codificación avanzada hasta Access 2013. Con importantes mejoras adicionales introducidas en Access 2013, las capacidades de las macros se volvieron completamente comparables a VBA. Hicieron prácticas implementaciones de aplicaciones basadas en web ricas en funciones, a través de una interfaz y herramientas de Microsoft SharePoint muy mejoradas, así como en escritorios tradicionales de Windows.

Al igual que otros productos del paquete Microsoft Office, el otro lenguaje de programación utilizado en Access es Microsoft VBA. Es similar a Visual Basic 6.0 (VB6) y el código se puede almacenar en módulos, clases y código detrás de formularios e informes. Para crear un producto terminado más rico, más eficiente y fácil de mantener con un buen manejo de errores, la mayoría de las aplicaciones profesionales de Access se desarrollan utilizando el lenguaje de programación VBA en lugar de macros, excepto cuando la implementación web es un requisito comercial.

Para manipular datos en tablas y consultas en VBA o macros, Microsoft proporciona dos bibliotecas de acceso a bases de datos de componentes COM :

  1. Objetos de acceso a datos (DAO) (solo 32 bits), que se incluye en Access y Windows y evolucionó a ACE en Microsoft Access 2007 para el formato de base de datos ACCDE
  2. Objetos de datos ActiveX Objetos de datos ActiveX (ADO) (versiones de 32 y 64 bits)

Además de DAO y ADO, los desarrolladores también pueden utilizar OLE DB y ODBC para desarrollar programas nativos C/C++ para Access. [45] Para ADP y la manipulación directa de datos de SQL Server, se requiere ADO. DAO es más apropiado para administrar datos en bases de datos Access/Jet y la única forma de manipular los tipos de campos complejos en tablas ACCDB.

En el contenedor de la base de datos o en el panel de navegación de Access 2007 y versiones posteriores, el sistema clasifica automáticamente cada objeto por tipo (p. ej., tabla, consulta, macro). Muchos desarrolladores de Access utilizan la convención de nomenclatura de Leszynski , aunque no es universal; es una convención de programación, no una regla impuesta por DBMS. [46] [47] Es particularmente útil en VBA donde las referencias a nombres de objetos pueden no indicar su tipo de datos (por ejemplo, tbl para tablas, qry para consultas).

Los desarrolladores implementan Microsoft Access con mayor frecuencia para proyectos individuales y de grupos de trabajo (la caracterización de la velocidad de Access 97 se realizó para 32 usuarios). [48] ​​Desde Access 97, y con Access 2003 y 2007, Microsoft Access y el hardware han evolucionado significativamente. Las bases de datos de menos de 1 GB de tamaño (que ahora caben completamente en la RAM) y 200 usuarios simultáneos están dentro de las capacidades de Microsoft Access. [49] Por supuesto, el rendimiento depende del diseño y las tareas de la base de datos. Los trabajos que requieren un uso intensivo de disco, como búsquedas y consultas complejas, son los que consumen la mayor parte del tiempo.

Como los datos de una base de datos de Microsoft Access se pueden almacenar en caché en la RAM, la velocidad de procesamiento puede mejorar sustancialmente cuando hay un solo usuario o si los datos no cambian. En el pasado, el efecto de la latencia de paquetes en el sistema de bloqueo de registros hacía que las bases de datos de Access se ejecutaran lentamente en una red privada virtual (VPN) o una red de área amplia (WAN) contra una base de datos Jet. A partir de 2010, las conexiones de banda ancha han mitigado este problema. El rendimiento también se puede mejorar si se mantiene una conexión continua con la base de datos back-end durante toda la sesión en lugar de abrirla y cerrarla para cada acceso a la tabla. [ cita necesaria ]

En julio de 2011, Microsoft reconoció un problema de rendimiento de consultas intermitentes con todas las versiones de Access y Windows 7 y Windows Server 2008 R2 debido a que la naturaleza de la administración de recursos es muy diferente en los sistemas operativos más nuevos. [50] Este problema afecta gravemente el rendimiento de las consultas tanto en Access 2003 como en versiones anteriores con el código Jet Database Engine , así como en Access 2007 y versiones posteriores con Access Database Engine (ACE). [50] Microsoft ha publicado las revisiones KB2553029 para Access 2007 y KB2553116 para Access 2010, pero no solucionará el problema con Jet 4.0 ya que no cuenta con soporte general. [50]

En versiones anteriores de Microsoft Access, la capacidad de distribuir aplicaciones requería la compra del Developer Toolkit; en Access 2007, 2010 y Access 2013 la versión "Runtime Only" se ofrece como descarga gratuita, [51] haciendo posible la distribución de aplicaciones libres de derechos en Windows XP, Vista, 7 y Windows 8.x. [52]

Arquitectura de base de datos dividida

Las aplicaciones de Microsoft Access pueden adoptar una arquitectura de base de datos dividida. La base de datos única se puede dividir en un archivo "back-end" separado que contiene las tablas de datos (compartidas en un servidor de archivos) y un "front-end" (que contiene los objetos de la aplicación como consultas, formularios, informes, macros y módulos). La aplicación Access "frontal" se distribuye al escritorio de cada usuario y se vincula a la base de datos compartida. Con este enfoque, cada usuario tiene una copia de Microsoft Access (o la versión en tiempo de ejecución) instalada en su máquina junto con la base de datos de su aplicación. Esto reduce el tráfico de la red ya que la aplicación no se recupera para cada uso. La base de datos "frontal" aún puede contener tablas locales para almacenar la configuración de un usuario o datos temporales. Este diseño de base de datos dividida también permite el desarrollo de la aplicación independientemente de los datos. Una desventaja es que los usuarios pueden realizar varios cambios en su propia copia local de la aplicación y esto dificulta la gestión del control de versiones. Cuando una nueva versión está lista, la base de datos de front-end se reemplaza sin afectar la base de datos de datos. Microsoft Access tiene dos utilidades integradas, Database Splitter [53] y Linked Table Manager, para facilitar esta arquitectura.

Las tablas vinculadas en Access utilizan rutas absolutas en lugar de rutas relativas, por lo que el entorno de desarrollo debe tener la misma ruta que el entorno de producción o se puede escribir una rutina de "enlazador dinámico" en VBA .

Para bases de datos de Access muy grandes, esto puede tener problemas de rendimiento y en estas circunstancias se debe considerar un backend SQL. Esto es un problema menor si toda la base de datos cabe en la RAM de la PC, ya que Access almacena datos e índices en caché.

Migración a SQL Server

Para escalar aplicaciones de Access a soluciones empresariales o web, una técnica posible implica migrar a Microsoft SQL Server o una base de datos de servidor equivalente. Un diseño cliente-servidor reduce significativamente el mantenimiento y aumenta la seguridad, la disponibilidad, la estabilidad y el registro de transacciones.

Access 2000 hasta Access 2010 incluía una función llamada Asistente de conversión que permitía a los usuarios actualizar sus bases de datos a Microsoft SQL Server, una base de datos cliente-servidor ODBC. Esta característica se eliminó de Access 2013. Una solución adicional, el Asistente de migración de SQL Server para Access (SSMA), sigue estando disponible para su descarga gratuita desde Microsoft. [54]

Hay una variedad de opciones de actualización disponibles. [55] Después de migrar los datos y las consultas a SQL Server, la base de datos de Access se puede vincular a la base de datos SQL, sujeta a limitaciones de conversión de tipos de datos:

De todos modos, SQL Server sigue siendo la migración más sencilla. La recuperación de datos de tablas vinculadas está optimizada solo para los registros necesarios, pero este escenario puede funcionar de manera menos eficiente que lo que de otro modo sería óptimo para SQL Server. Por ejemplo, en casos en los que las uniones de varias tablas aún requieren copiar la tabla completa en la red.

En versiones anteriores de Access, incluido Access 2010, las bases de datos también se pueden convertir en proyectos de datos de Access (ADP) que están vinculados directamente a una base de datos de SQL Server. Esta característica se eliminó de Access 2013. Los ADP admiten la capacidad de crear y modificar directamente objetos de SQL Server, como tablas, vistas, procedimientos almacenados y restricciones de SQL Server. Las vistas y los procedimientos almacenados pueden reducir significativamente el tráfico de red para uniones de varias tablas. SQL Server admite tablas temporales y enlaces a otras fuentes de datos más allá de la base de datos única de SQL Server.

Finalmente, algunas bases de datos de Access son reemplazadas completamente por otra tecnología como ASP.NET o Java una vez convertidos los datos. Sin embargo, cualquier migración puede exigir un esfuerzo importante, ya que el lenguaje Access SQL es un superconjunto más potente de SQL estándar. Además, los procedimientos de aplicación de Access, ya sean VBA y macros, están escritos en un nivel relativamente superior en comparación con las alternativas disponibles actualmente que son sólidas y completas. El lenguaje de macros de Access, que permite un nivel de abstracción incluso mayor que VBA, se mejoró significativamente en Access 2010 y nuevamente en Access 2013.

En muchos casos, los desarrolladores crean interfaces directas de web a datos usando ASP.NET, mientras mantienen los principales procesos de automatización empresarial, funciones administrativas y de generación de informes que no necesitan distribuirse a todos en Access para que los mantengan los trabajadores de la información.

Si bien todos los datos de Access pueden migrar directamente a SQL Server, algunas consultas no pueden migrarse correctamente. En algunas situaciones, es posible que necesite traducir funciones VBA y funciones definidas por el usuario a funciones/procedimientos T-SQL o .NET. Las consultas cruzadas se pueden migrar a SQL Server mediante el comando PIVOT.

Proteccion

Las aplicaciones de Microsoft Access se pueden hacer seguras mediante varios métodos, siendo el más básico el control de acceso con contraseña; ésta es una forma de protección relativamente débil.

Un mayor nivel de protección es el uso de seguridad de grupo de trabajo que requiere un nombre de usuario y una contraseña . Los usuarios y grupos se pueden especificar junto con sus derechos a nivel de tipo de objeto o de objeto individual. Esto se puede utilizar para especificar personas con derechos de solo lectura o de entrada de datos, pero puede resultar complicado especificarlo. Un archivo de seguridad de grupo de trabajo independiente contiene la configuración que se puede utilizar para gestionar varias bases de datos. La seguridad del grupo de trabajo no es compatible con el formato de base de datos ACCDB de Access 2007 y Access 2010, aunque Access 2007 y Access 2010 todavía la admiten para bases de datos MDB.

Las bases de datos también se pueden cifrar. El formato ACCDB ofrece un cifrado significativamente avanzado respecto a versiones anteriores. [56]

Además, si es necesario proteger el diseño de la base de datos para evitar cambios, las bases de datos de Access se pueden bloquear/proteger (y compilar el código fuente ) convirtiendo la base de datos a un archivo .MDE. Todos los cambios en el proyecto VBA (módulos, formularios o informes) deben realizarse en el MDB original y luego reconvertirse a MDE. En Access 2007 y Access 2010, la base de datos ACCDB se convierte en un archivo ACCDE. Algunas herramientas están disponibles para desbloquear y " descompilar ", aunque ciertos elementos, incluidos los comentarios y el formato originales de VBA, normalmente son irrecuperables.

Extensiones de archivo

Microsoft Access guarda información en los siguientes formatos de archivo :

Versiones

No hay versiones de Access entre 2.0 y 7.0 porque la versión de Office 95 se lanzó con Word 7. Todos los productos de Office 95 tienen capacidades OLE 2 y Access 7 muestra que era compatible con Word 7.

Se omitió la versión número 13.

Ver también

Referencias

  1. ^ "Notas de la versión del canal actual". Microsoft . Consultado el 10 de enero de 2024 .
  2. ^ "Historial de actualizaciones de Office para Mac". Documentos de Microsoft . 29 de diciembre de 2023.
  3. ^ ab "Historial de actualizaciones de Office LTSC 2021 y Office 2021". 29 de diciembre de 2023.
  4. ^ Warren, Tom. "Microsoft Office 2021 se lanzará el 5 de octubre". El borde . Consultado el 5 de octubre de 2021 .
  5. ^ "C++ en MS Office". cppcon. 17 de julio de 2014. Archivado desde el original el 7 de noviembre de 2019 . Consultado el 25 de junio de 2019 .
  6. ^ ab "Introducción a la importación y exportación de datos". Microsoft . Consultado el 15 de octubre de 2010 .
  7. ^ "Historial de acceso de Microsoft" . Consultado el 13 de marzo de 2016 .
  8. ^ Inc, Ziff Davis (15 de octubre de 1985). Revista PC. Ziff Davis, Inc. {{cite book}}: |last=tiene nombre genérico ( ayuda )
  9. ^ "Programa de acceso a información empresarial de Microsoft Access 1.0x". WinWorld . Consultado el 23 de mayo de 2022 .
  10. ^ abcd Goodhew, Tony (1996). "Motor a reacción: Historia" . Consultado el 2 de enero de 2011 .
  11. ^ abcd Ferguson, Scott. "El nacimiento de Visual Basic".
  12. ^ Brownstein, Marcos; Johnston, Stuart J. (14 de noviembre de 1988). "Microsoft trabaja en la base de datos SAA". InfoMundo . pag. 5.
  13. ^ Brownstein, Mark (13 de febrero de 1989). "Microsoft da los toques finales a las aplicaciones de Windows". InfoMundo . pag. 5.
  14. ^ Flynn, Laurie (8 de mayo de 1989). "Aplicaciones de Microsoft para compartir lenguaje de macros". InfoMundo . pag. 1.
  15. ^ Flynn, Laurie (21 de agosto de 1989). "Microsoft espera en las interfaces SQL". InfoMundo . pag. 109.
  16. ^ Cringely, Robert X. (4 de septiembre de 1989). "Gates afirma que los sistemas 80286 ya no son sus bebés". InfoMundo . pag. 82.
  17. ^ Vergonzosamente, Robert X. (31 de julio de 1989). "De ninguna manera, la industria de las PC siempre estará dominada por Doritos". InfoMundo . pag. 86.
  18. ^ Vergonzosamente, Robert X. (16 de octubre de 1989). "Lotus Exec habla de su terrible experiencia:" Los extraterrestres me obligan a usar MS Windows"". InfoMundo . pag. 106.
  19. ^ Cringely, Robert X. (20 de noviembre de 1989). "Elvis, ahora asistente de estacionamiento en Las Vegas, retrasa aún más Intel 486". InfoMundo . pag. 106.
  20. ^ Mace, Scott (30 de noviembre de 1992). "Microsoft demuestra su desafortunado Omega". InfoMundo . pag. dieciséis.
  21. ^ Picarille, Lisa; Mace, Scott (30 de marzo de 1992). "La compra de Fox por parte de Microsoft agita el mercado de XBase". InfoMundo . pag. 1. Cirrus (...) se enfrentará cara a cara con el programa Metaphor de Paradox y Metaphor Computer Systems.
  22. ^ Cringely, Robert X. (4 de noviembre de 1991). "Cualquiera que sea el disfraz que use Eckhard, probablemente asustará a Silicon Graphics". InfoMundo . pag. 118. (...) rumor (...) de que FoxPro podría reemplazar la base de datos de Redmond, largamente retrasada, ahora con el nombre en código Cirrus.
  23. ^ Mace, Scott (29 de junio de 1992). "Microsoft crea API para complementar ODBC". InfoMundo . pag. 1. La compatibilidad con Open ISAM estará en el próximo Cirrus DBMS para Windows de Microsoft.
  24. ^ "Los desarrolladores obtienen la versión beta de Microsoft DBMS". InfoMundo . 13 de julio de 1992. p. 3.
  25. ^ Johnston, Stuart J. (20 de julio de 1998). "Cirrus denominado Access; versión beta más rápida lanzada". InfoMundo . pag. 1.
  26. ^ "¿De dónde viene el nombre de Microsoft Access?". Lo viejo y nuevo . Microsoft. 13 de abril de 2006 . Consultado el 13 de marzo de 2016 .
  27. ^ "Lanzamientos de versiones de Microsoft Access, Service Packs, revisiones e historial de actualizaciones". FMS . Consultado el 20 de agosto de 2023 .
  28. ^ Error "sin memoria" al iniciar Microsoft Access
  29. ^ "Cambios en el acceso". Microsoft . Consultado el 13 de marzo de 2016 .
  30. ^ ab "Novedad de Access para desarrolladores". Microsoft . Consultado el 13 de marzo de 2016 .
  31. ^ "Funciones descontinuadas y funcionalidad modificada en Access 2013". Microsoft . Consultado el 13 de marzo de 2016 .
  32. ^ "Uso del tipo de datos extendido de fecha/hora".
  33. ^ "Novedades de Access 2021".
  34. ^ "Migrar una base de datos de Access a SQL Server". soporte.microsoft.com . Consultado el 15 de octubre de 2021 .
  35. ^ "Uso de Terminal Services y RemoteApp para ampliar su acceso a Microsoft y otras aplicaciones de Windows a través de Internet" . Consultado el 13 de marzo de 2016 .
  36. ^ "Servicios de acceso en la hoja de ruta de SharePoint". Microsoft . Consultado el 20 de mayo de 2019 .
  37. ^ "Cree formularios web ASP.NET para utilizar una base de datos de Microsoft Access" . Consultado el 13 de junio de 2017 .
  38. ^ "Creación de bases de datos web con Access 2010 y Access Services". msdn.microsoft.com. 22 de julio de 2009 . Consultado el 24 de abril de 2013 .
  39. ^ "Ejemplos y aplicaciones web de Microsoft Access 2013". acceso-templates.com . Consultado el 4 de septiembre de 2017 .
  40. ^ "De vuelta por demanda popular: compatibilidad con archivos dBASE en Access". Blogs de oficina . Microsoft . 7 de septiembre de 2016 . Consultado el 20 de agosto de 2017 .
  41. ^ ab "Funciones descontinuadas y funcionalidad modificada en Access 2010". Office.com . Microsoft . Consultado el 17 de enero de 2014 .
  42. ^ "Distribución de Microsoft Access Runtime y descargas gratuitas" . Consultado el 15 de junio de 2016 .
  43. ^ "Simulación de Microsoft Access Runtime durante el desarrollo" . Consultado el 15 de junio de 2016 .
  44. ^ Sinclair, Russell (2000). Desde el acceso al servidor SQL. Serie Apress. Presione. pag. 39.ISBN _ 978-1-893115-24-8. Consultado el 8 de julio de 2010 . Las consultas de paso a través de SQL son consultas en las que puede ingresar una declaración que se pasa directamente al controlador ODBC sin que el motor Jet la valide ni la analice de ninguna manera.
  45. ^ Aleksandar Jakšić (agosto de 2008). "Desarrollo de soluciones de Access 2007 con C nativo o C++". Corporación Microsoft . Consultado el 22 de septiembre de 2008 .
  46. ^ "Convenciones de nomenclatura". Microsoft. 9 de julio de 2007 . Consultado el 13 de marzo de 2016 .
  47. ^ Convenciones de nomenclatura para Visual Basic
  48. ^ Kevin Collins ( Gestión de programas Microsoft Jet ), "Técnicas de optimización y descripción general del rendimiento de Microsoft Jet 3.5", MSDN. Consultado el 19 de julio de 2005.
  49. ^ "Escalabilidad de la base de datos de Microsoft Access: ¿cuántos usuarios puede admitir?". Blog del equipo de desarrollo de software de FMS . 31 de mayo de 2011 . Consultado el 13 de marzo de 2016 .
  50. ^ abc Consulta muy lenta de Access 2002 con Windows 7
  51. ^ "Descargas gratuitas y programas de distribución en tiempo de ejecución de Microsoft Access" . Consultado el 13 de marzo de 2016 .
  52. ^ "Descargue Microsoft Access 2010 Runtime desde el centro de descarga oficial de Microsoft". Microsoft . Consultado el 13 de marzo de 2016 .
  53. ^ "Arquitectura de base de datos dividida de Microsoft Access para admitir entornos multiusuario, mejorar el rendimiento y simplificar la capacidad de mantenimiento". Fmsinc.com . Consultado el 24 de abril de 2013 .
  54. ^ "Asistente de migración de Microsoft SQL Server 7.10 para Access". Microsoft.com . Consultado el 20 de octubre de 2018 .
  55. ^ "Cuándo y cómo actualizar las bases de datos de Microsoft Access a SQL Server" . Consultado el 13 de marzo de 2016 .
  56. ^ "Consideraciones de seguridad y orientación para el acceso 2007". Microsoft. 5 de mayo de 2014 . Consultado el 13 de marzo de 2016 .
  57. ^ "Información del ciclo de vida de Microsoft Access" . Consultado el 23 de octubre de 2011 .
  58. ^ abcd "Lanzamientos de versiones de Microsoft Access, Service Packs, revisiones e historial de actualizaciones". FMS . Consultado el 20 de julio de 2015 .
  59. ^ "Capítulo 5: Requisitos del sistema para MS Office". Kit de recursos de Office 97 . Microsoft . Consultado el 2 de mayo de 2013 .
  60. ^ "Requisitos de los sistemas Office 2000". Sitio web de Microsoft Office . Microsoft. Archivado desde el original el 2 de febrero de 2012 . Consultado el 2 de mayo de 2013 .
  61. ^ "Requisitos del sistema de Office XP". Sitio web de Microsoft Office . Microsoft. Archivado desde el original el 4 de marzo de 2013 . Consultado el 2 de mayo de 2013 .
  62. ^ "Requisitos del sistema y licencias de Office 2003". Sitio web de Microsoft Office . Microsoft. Archivado desde el original el 15 de junio de 2013 . Consultado el 2 de mayo de 2013 .
  63. ^ "Introducción al sistema Office 2007". Microsoft TechNet . Microsoft. 28 de abril de 2009 . Consultado el 2 de mayo de 2013 .
  64. ^ "Requisitos del sistema para Office 2010". Microsoft TechNet . Microsoft. 19 de febrero de 2013 . Consultado el 2 de mayo de 2013 .
  65. ^ "Requisitos del sistema para Office 2013". Microsoft TechNet . Microsoft. 16 de diciembre de 2016 . Consultado el 15 de agosto de 2017 .
  66. ^ "MicrosoftAcceso 2016". Microsoft . Microsoft.
  67. ^ "MicrosoftAcceso 2019". Microsoft . Microsoft.
  68. ^ "Aplicaciones de Microsoft 365 para empresas". Microsoft . Microsoft.
  69. ^ "Aplicaciones de Microsoft 365 para empresas". Microsoft . Microsoft.

enlaces externos