You are on page 1of 11

Microsoft Access

Microsoft Access, also known as Microsoft Oce Access, is a database management system from Microsoft
that combines the relational Microsoft Jet Database
Engine with a graphical user interface and softwaredevelopment tools. It is a member of the Microsoft Ofce suite of applications, included in the Professional and
higher editions or sold separately.

for Visual Basic, where the Embedded Basic engine was


used).[2][3] After Accesss premiere, the Omega project
was demonstrated in 1992 to several journalists and included features that were not available in Access.[12]

1.2 Project Cirrus

Microsoft Access stores data in its own format based


After the Omega project was scrapped, some of its develon the Access Jet Database Engine. It can also import
opers were assigned to the Cirrus project (most were asor link directly to data stored in other applications and
signed to the team which created Visual Basic).[2] Its goal
databases.[1]
was to create a competitor for applications like Paradox
Software developers and data architects can use Mi- or dBase that would work on Windows.[13] After Microsoft Access to develop application software, and crosoft acquired FoxPro, there were rumors that the Mi"power users" can use it to build software applications. crosoft project might get replaced with it,[14] but the comLike other Oce applications, Access is supported by pany decided to develop them in parallel. It was assumed
Visual Basic for Applications (VBA), an object-oriented that the project would make use of Extensible Storage
programming language that can reference a variety of Engine (Jet Blue)[15] but, in the end, only support for
objects including DAO (Data Access Objects), ActiveX Microsoft Jet Database Engine (Jet Red) was provided.
Data Objects, and many other ActiveX components. Vi- The project used some of the code from both the Omega
sual objects used in forms and reports expose their meth- project and a pre-release version of Visual Basic.[3] In July
ods and properties in the VBA programming environ- 1992, betas of Cirrus shipped to developers[16] and the
ment, and VBA code modules may declare and call Win- name Access became the ocial name of the product.[17]
dows operating-system functions.

1.3 Timeline

1
1.1

History

1992: Microsoft released Access version 1.0 on 13


November 1992, and an Access 1.1 release in May 1993
to improve compatibility with other Microsoft products
and to include the Access Basic programming language.

Project Omega

Microsofts rst attempt to sell a relational database product was during the mid 1980s, when Microsoft obtained
the license to sell R:Base.[2] In the late 1980s Microsoft
developed its own solution codenamed Omega.[3] It was
conrmed in 1988 that a database product for Windows
and OS/2 was in development.[4][5] It was going to include
the EB Embedded Basic language,[3] which was going
to be the language for writing macros in all Microsoft
applications,[6] but the unication of macro languages did
not happen until the introduction of Visual Basic for Applications (VBA). Omega was also expected to provide
a front end to the Microsoft SQL Server.[7] The application was very resource-hungry, and there were reports
that it was working slowly on the 386 processors that were
available at the time.[8] It was scheduled to be released in
the 1st quarter of 1990,[9] but in 1989 the development
of the product was reset[2][10] and it was rescheduled to
be delivered no sooner than in January 1991.[11] Parts of
the project were later used for other Microsoft projects:
Cirrus (codename for Access) and Thunder (codename

1994: Microsoft specied the minimum hardware requirements for Access v2.0 as: Microsoft Windows v3.1
with 4 MB of RAM required, 6 MB RAM recommended;
8 MB of available hard disk space required, 14 MB hard
disk space recommended. The product shipped on seven
1.44 MB diskettes. The manual shows a 1994 copyright
date.
Originally, the software worked well with relatively small
databases but testing showed that some circumstances
caused data corruption. For example, le sizes over 10
MB proved problematic (note that most hard disks held
less than 500 MB at the time this was in wide use), and the
Getting Started manual warns about a number of circumstances where obsolete device drivers or incorrect congurations can cause data loss. With the phasing out of
Windows 95, 98 and ME, improved network reliability,
and Microsoft having released 8 service packs for the Jet
Database Engine, the reliability of Access databases has
improved and it supports both more data and a larger
1

2
number of users.
With Oce 95, Microsoft Access 7.0 (a.k.a. Access
95) became part of the Microsoft Oce Professional
Suite, joining Microsoft Excel, Word, and PowerPoint
and transitioning from Access Basic to VBA. Since then,
Microsoft has released new versions of Microsoft Access
with each release of Microsoft Oce. This includes Access 97 (version 8.0), Access 2000 (version 9.0), Access
2002 (version 10.0), Access 2003 (version 11.5), Access
2007 (version 12.0), and Access 2010 (version 14.0).
Versions 3.0 and 3.5 of Microsoft Jet database engine
(used by Access 7.0 and the later-released Access 97 respectively) had a critical issue which made these versions
of Access unusable on a computer with more than 1 GB
of memory.[18] While Microsoft xed this problem for Jet
3.5/Access 97 post-release, it never xed the issue with
Jet 3.0/Access 95.
The native Access database format (the Jet MDB
Database) has also evolved over the years. Formats include Access 1.0, 1.1, 2.0, 7.0, 97, 2000, 2002, 2007, and
2010. The most signicant transition was from the Access 97 to the Access 2000 format; which is not backward
compatible with earlier versions of Access. As of 2011
all newer versions of Access support the Access 2000 format. New features were added to the Access 2002 format which can be used by Access 2002, 2003, 2007, and
2010.

USES

Microsoft Access 2013 oers traditional Access desktop


solutions plus a signicantly updated SharePoint 2013
web solution.[19] The Access Web model in Access 2010
was replaced by a new architecture that stores its data
in actual SQL Server databases. Unlike SharePoint lists,
this oers true relational database design with referential integrity, scalability, extensibility and performance
one would expect from SQL Server.[20] The database solutions that can be created on SharePoint 2013 oer a
modern user interface designed to display multiple levels
of relationships that can be viewed and edited, along with
resizing for dierent devices and support for touch. The
Access 2013 desktop is similar to Access 2010 but several features were discontinued including support for Access Data Projects (ADPs), pivot tables, pivot charts, Access data collections, source code control, replication, and
other legacy features.[21] Access desktop database maximum size remained 2GB (as it has been since the 2000
version).

Prior to the introduction of Access, Borland (with


Paradox and dBase) and Fox (with FoxPro) dominated
the desktop database market. Microsoft Access was the
rst mass-market database program for Windows. With
Microsofts purchase of FoxPro in 1992 and the incorporation of Foxs Rushmore query optimization routines
into Access, Microsoft Access quickly became the dominant database for Windows - eectively eliminating the
competition which failed to transition from the MS-DOS
[22]
Microsoft Access 2000 increased the maximum database world.
size to 2GB from 1GB in Access 97.
Accesss initial codename was Cirrus; the forms engine
Microsoft Access 2007 introduced a new database for- was called Ruby. This was before Visual Basic. Bill
mat: ACCDB. It supports links to SharePoint lists and Gates saw the prototypes and decided that the BASIC lancomplex data types such as multivalue and attachment guage component should be co-developed as a separate
elds. These new eld types are essentially recordsets in expandable application, a project called Thunder. The
elds and allow the storage of multiple values or les in two projects were developed separately.
one eld. Microsoft Access 2007 also introduced File Access was also the name of a communications proAttachment eld, which stored data more eciently than gram from Microsoft, meant to compete with ProComm
the OLE (Object Linking and Embedding) eld.
and other programs. This proved a failure and was
[23]
Years later, Microsoft reused the name for
Microsoft Access 2010 introduced a new version of the dropped.
its
database
software.
ACCDB format supported hosting Access Web solutions
on a SharePoint 2010 server. For the rst time, this allowed Access solutions to be run without having to install Access on their PC and was the rst support of Mac
users. Any user on the SharePoint site with sucient 2 Uses
rights could use the Access Web solution. A copy of Access was still required for the developer to create the Ac- In addition to using its own database storage le, Micess Web solution, and the desktop version of Access re- crosoft Access also may be used as the 'front-end' of a
mained part of Access 2010. The Access Web solutions program while other products act as the 'back-end' tawere not the same as the desktop solutions. Automation bles, such as Microsoft SQL Server and non-Microsoft
was only through the macro language (not VBA) which products such as Oracle and Sybase. Multiple backend
Access automatically converted to JavaScript. The data sources can be used by a Microsoft Access Jet Database
was no longer in an Access database but SharePoint lists. (ACCDB and MDB formats). Similarly, some applicaAn Access desktop database could link to the SharePoint tions such as Visual Basic, ASP.NET, or Visual Studio
data, so hybrid applications were possible so that Share- .NET will use the Microsoft Access database format for
Point users needing basic views and edits could be sup- its tables and queries. Microsoft Access may also be
ported while the more sophisticated, traditional solutions part of a more complex solution, where it may be intecould remain in the desktop Access database.
grated with other technologies such as Microsoft Excel,

3
Microsoft Outlook, Microsoft Word, Microsoft Power- Data Access Pages created publishable web pages. Data
Point and ActiveX controls.
Access Pages are no longer supported. The Microsoft
Access tables support a variety of standard eld types, Jet Database Engine, core to Access, can be accessed
indices, and referential integrity including cascading through technologies such as ODBC or OLE DB. The
updates and deletes. Access also includes a query data (i.e., tables and queries) can be accessed by webinterface, forms to display and enter data, and reports based applications developed in ASP.NET, PHP, or Java.
for printing. The underlying Jet database, which contains With the use of Microsofts Terminal Services and Remote Desktop Application in Windows Server 2008 R2,
these objects, is multi-user and handles record-locking.
organizations can host Access applications so they can be
Repetitive tasks can be automated through macros with run over the web.[24] This technique does not scale the
point-and-click options. It is also easy to place a database way a web application would but is appropriate for a limon a network and have multiple users share and up- ited number of users depending on the conguration of
date data without overwriting each others work. Data is the host.
locked at the record level which is signicantly dierent
Access 2010 allows databases to be published to
from Excel which locks the entire spreadsheet.
SharePoint 2010 web sites running Access Services.
There are template databases within the program and for These web-based forms and reports run in any modern
download from their website. These options are avail- web browser. The resulting web forms and reports, when
able upon starting Access and allow users to enhance a accessed via a web browser, don't require any add-ins or
database with predened tables, queries, forms, reports, extensions (e.g. ActiveX, Silverlight).
and macros. Database templates support VBA code but
Access 2013 can create web applications directly in
Microsofts templates do not include VBA code.
SharePoint 2013 sites running Access Services. Access
Programmers can create solutions using VBA, which is 2013 web solutions store its data in an underlying SQL
similar to Visual Basic 6.0 (VB6) and used throughout the Server database which is much more scalable and robust
Microsoft Oce programs such as Excel, Word, Outlook than the Access 2010 version which used SharePoint lists
and PowerPoint. Most VB6 code, including the use of to store its data.
Windows API calls, can be used in VBA. Power users
and developers can extend basic end-user solutions to a A compiled version of an Access database (File extenprofessional solution with advanced automation, data val- sions: .MDE /ACCDE or .ADE; ACCDE only works
with Access 2007 or later) can be created to prevent
idation, error trapping, and multi-user support.
user from accessing the design surfaces to modify modThe number of simultaneous users that can be supported ule code, forms, and reports. An MDE/ACCDE le is
depends on the amount of data, the tasks being per- a Microsoft Access database le with all modules comformed, level of use, and application design. Generally piled and all editable source code removed. An ADE le
accepted limits are solutions with 1 GB or less of data is an Access project le with all modules compiled and all
(Access supports up to 2 GB) and performs quite well editable source code removed. Both the .MDE/ACCDE
with 100 or fewer simultaneous connections (255 concur- and .ADE versions of an Access database are used when
rent users are supported). This capability is often a good end-user modications are not allowed or when the applit for department solutions. If using an Access database cations source code should be kept condential.
solution in a multi-user scenario, the application should
be split. This means that the tables are in one le called Microsoft also oers developer extensions for download to help distribute Access 2007 applications, crethe back end (typically stored on a shared network folder)
and the application components (forms, reports, queries, ate database templates, and integrate source code control
with Microsoft Visual SourceSafe.
code, macros, linked tables) are in another le called the
front end. The linked tables in the front end point to the
back end le. Each user of the Access application would
3 Features
then receive his or her own copy of the front end le.
Applications that run complex queries or analysis across
large datasets would naturally require greater bandwidth
and memory. Microsoft Access is designed to scale to
support more data and users by linking to multiple Access
databases or using a back-end database like Microsoft
SQL Server. With the latter design, the amount of data
and users can scale to enterprise-level solutions.

Users can create tables, queries, forms and reports, and


connect them together with macros. Advanced users can
use VBA to write rich solutions with advanced data manipulation and user control. Access also has report creation features that can work with any data source that Access can access.

Microsoft Accesss role in web development prior to version 2010 is limited. User interface features of Access,
such as forms and reports, only work in Windows. In
versions 2000 through 2003 an Access object type called

The original concept of Access was for end users to be


able to access data from any source. Other features include: the import and export of data to many formats including Excel, Outlook, ASCII, dBase, Paradox, FoxPro,
SQL Server, Oracle, ODBC, etc. It also has the ability to

3 FEATURES

link to data in its existing location and use it for viewing, querying, editing, and reporting. This allows the
existing data to change while ensuring that Access uses
the latest data. It can perform heterogeneous joins between data sets stored across dierent platforms. Access
is often used by people downloading data from enterprise
level databases for manipulation, analysis, and reporting
locally.

SharePoint Server 2010 via Access Services allows for


Access 2010 databases to be published to SharePoint,
thus enabling multiple users to interact with the database
application from any standards-compliant Web browser.
Access Web databases published to SharePoint Server
can use standard objects such as tables, queries, forms,
macros, and reports. Access Services stores those objects
in SharePoint.[25]

There is also the Jet Database format (MDB or ACCDB


in Access 2007) which can contain the application and
data in one le. This makes it very convenient to distribute the entire application to another user, who can run
it in disconnected environments.

Access 2013 oers the ability to publish Access web solutions on SharePoint 2013. Rather than using SharePoint lists as its data source, Access 2013 uses an actual SQL Server database hosted by SharePoint or SQL
Azure. This oers a true relational database with referential integrity, scalability, maintainability, and extensibility compared to the SharePoint views Access 2010
used.. The macro language is enhanced to support
more sophisticated programming logic and database level
automation.[26]

One of the benets of Access from a programmers perspective is its relative compatibility with SQL (structured
query language) queries can be viewed graphically or
edited as SQL statements, and SQL statements can be
used directly in Macros and VBA Modules to manipulate Access tables. Users can mix and use both VBA and
Macros for programming forms and logic and oers
object-oriented possibilities. VBA can also be included 3.2 Import or Link sources
in queries.
Microsoft Access can also import or link directly to data
Microsoft Access oers parameterized queries. These stored in other applications and databases.[1] Microsoft
queries and Access tables can be referenced from other Oce Access 2007 and newer can import from or link
programs like VB6 and .NET through DAO or ADO. to:
From Microsoft Access, VBA can reference parameterized stored procedures via ADO.
Microsoft Access
The desktop editions of Microsoft SQL Server can be
used with Access as an alternative to the Jet Database En Excel
gine. This support started with MSDE (Microsoft SQL
Server Desktop Engine), a scaled down version of Mi SharePoint lists
crosoft SQL Server 2000, and continues with the SQL
Server Express versions of SQL Server 2005 and 2008.
Plain text
Microsoft Access is a le server-based database. Unlike clientserver relational database management systems (RDBMS), Microsoft Access does not implement
database triggers, stored procedures, or transaction logging. Access 2010 includes table-level triggers and stored
procedures built into the ACE data engine. Thus a Clientserver database system is not a requirement for using
stored procedures or table triggers with Access 2010. Tables, queries, forms, reports and macros can now be developed specically for web base application in Access
2010. Integration with Microsoft SharePoint 2010 is also
highly improved.

XML
Outlook
HTML
dBase (dropped in Access 2013)
Paradox (with Access 2007; dropped in Access
2010[27] )
Lotus 1-2-3 (dropped in Access 2010[27] )
ODBC-compliant data containers, including:

3.1

Access Services and Web database

See also: Web form


ASP.NET web forms can query a Microsoft Access
database, retrieve records and display them on the
browser.

Microsoft SQL Server


Oracle
MySQL
PostgreSQL
IBM Lotus Notes
AS 400 DB2

Microsoft Access Runtime

Microsoft oers free runtime versions of Microsoft Access: Access 2013 Runtime, Access 2010 Runtime,
Access 2007 Runtime, which allow users to run an Access
desktop application without needing to purchase or install
a full version of Microsoft Access. This allows Access developers to create databases that can be freely distributed
to an unlimited number of end-users. The runtime version allows users to view, edit and delete data, along with
running queries, forms, reports, macros and VBA module code. But the runtime version does not allow users to
change the design of Microsoft Access objects or code.
The runtime versions are similar to their corresponding
full version of Access and usually compatible with earlier
versions; for example Access Runtime 2010 allows a user
to run an Access application made with the 2010 version
as well as 2007 through 2000. Due to deprecated features in Access 2013, its runtime version is also unable to
support those older features.

reports, etc. Macros support basic logic (IF-conditions)


and the ability to call other macros. Macros can also contain sub-macros which are similar to subroutines. In Access 2007, enhanced macros included error-handling and
support for temporary variables. Access 2007 also introduced embedded macros that are essentially properties
of an objects event. This eliminated the need to store
macros as individual objects. However, macros were
limited in their functionality by a lack of programming
loops and advanced coding logic until Access 2013. With
signicant further enhancements introduced in Access
2013, the capabilities of macros became fully comparable to VBA. They made feature rich web-based application deployments practical, via a greatly enhanced Microsoft SharePoint interface and tools, as well as on traditional Windows desktops.

In common with other products in the Microsoft Oce


suite, the other programming language used in Access is
Microsoft VBA. It is similar to Visual Basic 6.0 (VB6)
and code can be stored in modules, classes, and code behind forms and reports. To create a richer, more ecient
and maintainable nished product with good error handling, most professional Access applications are devel5 Development
oped using the VBA programming language rather than
macros, except where web deployment is a business reAccess stores all database tables, queries, forms, reports,
quirement.
macros, and modules in the Access Jet database as a single
To manipulate data in tables and queries in VBA or
le.
macros, Microsoft provides two database access libraries
For query development, Access oers a Query Deof COM components:
signer, a graphical user interface that allows users to
build queries without knowledge of structured query lan1. Data Access Objects (DAO) (32-bit only), which
guage. In the Query Designer, users can show the datais included in Access and Windows and evolved to
sources of the query (which can be tables or queries) and
ACE in Microsoft Access 2007 for the ACCDE
select the elds they want returned by clicking and dragdatabase format
ging them into the grid. One can set up joins by clicking
and dragging elds in tables to elds in other tables. Ac2. ActiveX Data Objects ActiveX Data Objects (ADO)
cess allows users to view and manipulate the SQL code if
(both 32-bit and 64-bit versions)
desired. Any Access table, including linked tables from
dierent data sources, can be used in a query.
As well as DAO and ADO, developers can also use OLE
Access also supports the creation of pass-through DB and ODBC for developing native C/C++ programs
queries. These snippets of SQL code can address ex- for Access.[29] For ADPs and the direct manipulation of
ternal data sources through the use of ODBC connec- SQL Server data, ADO is required. DAO is most approtions on the local machine. This enables users to inter- priate for managing data in Access/Jet databases, and the
act with data stored outside the Access program without only way to manipulate the complex eld types in ACusing linked tables or Jet.[28] Users construct the pass- CDB tables.
through queries using the SQL syntax supported by the In the database container or navigation pane in Access
external data source.
2007 and later versions, the system automatically cateWhen developing reports (in Design View) additions or
changes to controls cause any linked queries to execute
in the background and the designer is forced to wait for
records to be returned before being able to make another
change. This feature cannot be turned o.

gorizes each object by type (e.g., table, query, macro).


Many Access developers use the Leszynski naming convention, though this is not universal; it is a programming
convention, not a DBMS-enforced rule.[30][31] It is particularly helpful in VBA where references to object names
Non-programmers can use the macro feature to auto- may not indicate its data type (e.g. tbl for tables, qry for
mate simple tasks through a series of drop-down selec- queries).
tions. Macros allow users to easily chain commands to- Developers deploy Microsoft Access most often for indigether such as running queries, importing or exporting vidual and workgroup projects (the Access 97 speed chardata, opening and closing forms, previewing and printing acterization was done for 32 users).[32] Since Access 97,

DEVELOPMENT

and with Access 2003 and 2007, Microsoft Access and


hardware have evolved signicantly. Databases under 1
GB in size (which can now t entirely in RAM) and 200
simultaneous users are well within the capabilities of Microsoft Access.[33] Of course, performance depends on
the database design and tasks. Disk-intensive work such
as complex searching and querying take the most time.

settings or temporary data. This split-database design


also allows development of the application independent
of the data. One disadvantage is that users may make
various changes to their own local copy of the application
and this makes it hard to manage version control. When
a new version is ready, the front-end database is replaced
without impacting the data database. Microsoft Access
[37]
As data from a Microsoft Access database can be cached has two built-in utilities, Database Splitter and Linked
Table Manager, to facilitate this architecture.
in RAM, processing speed may substantially improve
when there is only a single user or if the data is not chang- Linked tables in Access use absolute paths rather than reling. In the past, the eect of packet latency on the record- ative paths, so the development environment either has to
locking system caused Access databases to run slowly on have the same path as the production environment or a
a Virtual Private Network (VPN) or a Wide Area Net- dynamic-linker routine can be written in VBA.
work (WAN) against a Jet database. As of 2010 broad- For very large Access databases, this may have perforband connections have mitigated this issue. Performance mance issues and a SQL backend should be considered
can also be enhanced if a continuous connection is main- in these circumstances. This is less of an issue if the entained to the back-end database throughout the session tire database can t in the PCs RAM since Access caches
rather than opening and closing it for each table access. data and indexes.
If Access database performance over VPN or WAN suffers, then a client using Remote Desktop Protocol (such
as Microsoft Terminal Services) can provide an eective
5.2 Migration to SQL Server
solution. Access databases linked to SQL Server or to
Access Data Projects work well over VPNs and WANs.
Main article: Upsizing (database)
In July 2011, Microsoft acknowledged an intermittent
query performance problem with all versions of Access
To scale Access applications to enterprise or web soluand Windows 7 and Windows Server 2008 R2 due to the
tions, one possible technique involves migrating to Minature of resource management being vastly dierent in
crosoft SQL Server or equivalent server database. A
[34]
newer operating systems.
This issue severely aects
clientserver design signicantly reduces maintenance
query performance on both Access 2003 and earlier with
and increases security, availability, stability, and transthe Jet Database Engine code, as well as Access 2007
action logging.
[34]
and later with the Access Database Engine (ACE). Microsoft has issued hotxes KB2553029 for Access 2007 Access 2010 included a feature called the Upsizing Wizand KB2553116 for Access 2010, but will not x the is- ard that allowed users to upgrade their databases to
Microsoft SQL Server, an ODBC clientserver database.
sue with Jet 4.0 as it is out of mainstream support.[34]
This feature was removed from Access 2013. An addiIn earlier versions of Microsoft Access, the ability to distional solution, the SQL Server Migration Assistant for
tribute applications required the purchase of the DevelAccess (SSMA), continues to be available for free downoper Toolkit; in Access 2007, 2010 and Access 2013 the
load from Microsoft.[38]
[35]
Runtime Only version is oered as a free download,
[39]
After
making the distribution of royalty-free applications pos- A variety of upgrading options are available.
[36]
migrating the data and queries to SQL Server, the Acsible on Windows XP, Vista, 7 and Windows 8.x.
cess database can be linked to the SQL database. However, certain data types are problematic, most notably
Yes/No. In Microsoft Access there are three states for
5.1 Split database architecture
the Yes/No (True/False) data type: empty, no/false (zero)
Microsoft Access applications can adopt a split-database and yes/true (1). The corresponding SQL Server data
architecture. The single database can be divided into type is binary, with only two states, permissible values,
a separate back-end le that contains the data tables zero and 1. Regardless, SQL Server is still the easiest mi(shared on a le server) and a front-end (containing gration, and most appropriate especially if the user does
the applications objects such as queries, forms, reports, not have rights to create objects such as stored procemacros, and modules). The front-end Access appli- dures on SQL Server. Retrieving data from linked tables
cation is distributed to each users desktop and linked is optimized to just the records needed, but this scenario
to the shared database. Using this approach, each user may operate less eciently than what would otherwise
has a copy of Microsoft Access (or the runtime version) be optimal for SQL Server. For example, in instances
installed on their machine along with their application where multi-table joins still require copying the whole tadatabase. This reduces network trac since the appli- ble across the network.
cation is not retrieved for each use. The front-end In previous versions of Access, including Access 2010,
database can still contain local tables for storing a users databases can also be converted to Access Data Projects

7
(ADP) which are tied directly to one SQL Server
database. This feature was removed from Access 2013.
ADPs support the ability to directly create and modify
SQL Server objects such as tables, views, stored procedures, and SQL Server constraints. The views and stored
procedures can signicantly reduce the network trac
for multi-table joins. Fortunately, SQL Server supports
temporary tables and links to other data sources beyond
the single SQL Server database.

Additionally, if the database design needs to be secured to prevent changes, Access databases can be
locked/protected (and the source code compiled) by converting the database to a .MDE le. All changes to the
VBA project (modules, forms, or reports) need to be
made to the original MDB and then reconverted to MDE.
In Access 2007 and Access 2010, the ACCDB database
is converted to an ACCDE le. Some tools are available for unlocking and "decompiling", although certain
Finally, some Access databases are completely replaced elements including original VBA comments and formatting are normally irretrievable.
by another technology such as ASP.NET or Java once the
data is converted. However any migration may dictate
major eort since the Access SQL language is a more
powerful superset of standard SQL. Further, Access ap- 7 File extensions
plication procedures, whether VBA and macros, are written at a relatively higher level versus the currently avail- Microsoft Access saves information under the following
able alternatives that are both robust and comprehensive. le formats:
Note that the Access macro language, allowing an even
higher level of abstraction than VBA, was signicantly
enhanced in Access 2010 and again in Access 2013.

8 Versions

In many cases, developers build direct web-to-data interfaces using ASP.NET, while keeping major business
For a detailed list of updates within versions and downautomation processes, administrative and reporting funcload links: Microsoft Access Version Releases, Service
tions that don't need to be distributed to everyone in AcPacks, Hotxes, and Updates History
cess for information workers to maintain.
While all Access data can migrate to SQL Server directly, Notes
some queries cannot migrate successfully. In some situations, you may need to translate VBA functions and user There are no Access versions between 2.0 and 7.0 bedened functions into TSQL or .NET functions / procecause the Oce 95 version was launched with Word
dures. Crosstab queries can be migrated to SQL Server
7. All of the Oce 95 products have OLE 2 capausing the PIVOT command.
bilities, and Access 7 shows that it was compatible
with Word 7.

Protection

Microsoft Access oers several ways to secure the application while allowing users to remain productive.
The most basic is a database password. Once entered,
the user has full control of all the database objects. This
is a relatively weak form of protection which can be easily
cracked.
A higher level of protection is the use of workgroup security requiring a user name and password. Users and
groups can be specied along with their rights at the
object type or individual object level. This can be used to
specify people with read-only or data entry rights but may
be challenging to specify. A separate workgroup security
le contains the settings which can be used to manage
multiple databases. Workgroup security is not supported
in the Access 2007 and Access 2010 ACCDB database
format, although Access 2007 and Access 2010 still support it for MDB databases.
Databases can also be encrypted. The ACCDB format
oers signicantly advanced encryption from previous
versions.[40]

Version number 13 was skipped.

9 See also
Comparison of relational database management systems
Form (web)
MDB Tools
Kexi

10 References
[1] Introduction to importing and exporting data.
crosoft. Retrieved 15 October 2010.

Mi-

[2] Goodhew, Tony (1996). Jet Engine: History. Retrieved


2011-01-02.
[3] Ferguson, Scott. The Birth of Visual Basic.

10

REFERENCES

[4] Brownstein, Mark; Johnston, Stuart J. (November 14,


1988). Microsoft Works on SAA Database. InfoWorld.
p. .5.

[24] Using Terminal Services and RemoteApp to Extend Your


Microsoft Access and other Windows Applications Over
the Internet

[5] Brownstein, Mark (February 13, 1989). Microsoft Puts


Finishing Touches on Windows Applications. InfoWorld.
p. 5.

[25] Creating Web Databases with Access 2010 and Access


Services. Msdn.microsoft.com. 2009-07-22. Retrieved
2013-04-24.

[6] Flynn, Laurie (May 8, 1989). Microsoft Applications to


Share Macro Language. InfoWorld. p. 1.

[26] Whats new for Access 2013 developers

[7] Flynn, Laurie (August 21, 1989). Microsoft Waits on


SQL Front Ends. InfoWorld. p. 109.
[8] Cringely, Robert X. (September 4, 1989). Gates Claims
That 80286 Systems Are No Longer His Babies. InfoWorld. p. 82.
[9] Cringely, Robert X. (July 31, 1989). No Way, the PC
Industry Will Always Be Dominated By Doritos. InfoWorld. p. 86.
[10] Cringely, Robert X. (October 16, 1989). Lotus Exec
Tells of Ordeal: Aliens Force Me to Use MS Windows"".
InfoWorld. p. 106.
[11] Cringely, Robert X. (November 20, 1989). Elvis, Now a
Vegas Parking Lot Attendant, Further Delays Intel 486.
InfoWorld. p. 106.
[12] Mace, Scott (November 30, 1992). Microsoft demos its
ill-fated Omega. InfoWorld. p. 16.
[13] Picarille, Lisa; Mace, Scott (March 30, 1992).
Microsofts Fox purchase stirs up the XBase market. InfoWorld. p. 1. Cirrus (...) will go head-to-head
with Paradox and Metaphor Computer Systems
Metaphor program.
[14] Cringely, Robert X. (November 4, 1991). Whatever costume Eckhard wears is likely to scare Silicon Graphics.
InfoWorld. p. 118. (...) rumor (...) that FoxPro might replace Redmonds long-delayed database, now code-named
Cirrus.
[15] Mace, Scott (June 29, 1992). Microsoft creating API to
complement ODBC. InfoWorld. p. 1. Open ISAM support will be in Microsofts forthcomming Cirrus DBMS
for Windows.
[16] Developers get beta version of Microsoft DBMS. InfoWorld. July 13, 1992. p. 3.
[17] Johnston, Stuart J. (July 20, 1998). Cirrus dubbed Access; faster beta released. InfoWorld. p. 1.
[18] Out of memory error starting Microsoft Access
[19] Changes in Access 2013
[20] Whats new for Access 2013 developers
[21] Discontinued features and modied functionality in Access 2013
[22] Microsoft Access History
[23] Where did the name for Microsoft Access come from?

[27] Discontinued features and modied functionality in Access 2010. Oce.com. Microsoft. Retrieved 17 January
2014.
[28] Sinclair, Russell (2000). From access to SQL server.
Apress Series. Apress. p. 340. ISBN 978-1-893115-248. Retrieved 2010-07-08. SQL pass-through queries are
queries in which you can enter a statement that is passed
directly to the ODBC driver without the Jet engine validating it or parsing it in any way.
[29] Aleksandar Jaki (August 2008). Developing Access
2007 Solutions with Native C or C++". Microsoft Corporation. Retrieved 2008-09-22.
[30] Naming Conventions for Microsoft Access
[31] Naming Conventions for Visual Basic
[32] Kevin Collins (Microsoft Jet Program Management),
Microsoft Jet 3.5 Performance Overview and Optimization Techniques, MSDN. Retrieved July 19, 2005.
[33] Microsoft Access Database Scalability: How many users
can it support?
[34] Very slow Access 2002 query with Windows 7
[35] Microsoft Access Runtime Distribution and Free Downloads
[36] Microsoft Access 2010 Runtime
[37] Microsoft Access Split Database Architecture to Support
Multiuser Environments, Improve Performance, and Simplify Maintainability. Fmsinc.com. Retrieved 2013-0424.
[38] Database Server & Data Management Software | SQL
Server 2012. Microsoft.com. Retrieved 2013-04-24.
[39] When and How to Upsize Microsoft Access Databases to
SQL Server
[40] Security Considerations and Guidance for Access 2007
[41] Microsoft Access Life-cycle Information. Retrieved
2011-10-23.
[42] Microsoft Access Version Releases, Service Packs, Hotxes, and Updates History. FMS. Retrieved 20 July
2015.
[43] Microsoft Access Version Releases, Service Packs, Hotxes, and Updates History. FMS. Retrieved 20 July
2015.
[44] Microsoft Access Version Releases, Service Packs, Hotxes, and Updates History. FMS. Retrieved 20 July
2015.

[45] Chapter 5 - System Requirements for MS Oce. Oce


97 Resource Kit. Microsoft. Retrieved 2 May 2013.
[46] Oce 2000 Systems Requirements. Microsoft Oce
website. Microsoft. Retrieved 2 May 2013.
[47] Oce XP System Requirements. Microsoft Oce website. Microsoft. Retrieved 2 May 2013.
[48] Oce 2003 Licensing and System Requirements.
Microsoft Oce website. Microsoft. Retrieved 2 May
2013.
[49] Getting started with the 2007 Oce system. Microsoft
TechNet. Microsoft. 28 April 2009. Retrieved 2 May
2013.
[50] System requirements for Oce 2010. Microsoft TechNet. Microsoft. 19 February 2013. Retrieved 2 May
2013.
[51] System requirements for Oce 2013. Microsoft TechNet. Microsoft. 12 February 2013. Retrieved 2 May
2013.

11

External links

Ocial website
Access Blog
This article is based on material taken from the Free Online Dictionary of Computing prior to 1 November 2008
and incorporated under the relicensing terms of the
GFDL, version 1.3 or later.

10

12

12
12.1

TEXT AND IMAGE SOURCES, CONTRIBUTORS, AND LICENSES

Text and image sources, contributors, and licenses


Text

Microsoft Access Source: https://en.wikipedia.org/wiki/Microsoft_Access?oldid=672616808 Contributors: Ed Poor, Wheat, Ellmist,


Erik Zachte, Nwt, Anonymoues, Modster, Norm, Liftarn, Ahoerstemeier, Gerald~enwiki, Glenn, Poor Yorick, Dysprosia, Jay, Doradus,
Greenrd, Morwen, Bevo, Aaronhill, Johnleemk, Chuunen Baka, MrJones, Kyle Rayner, Lowellian, Texture, Delpino, Khlo, Mushroom,
Dina, DocWatson42, Oberiko, var Arnfjr Bjarmason, Tom harrison, Lupin, Kainaw, AlistairMcMillan, Orrc, Wmahan, Stinerman,
Neilc, Gadum, Coldacid, Utcursch, Antandrus, Sam Hocevar, Troels Arvin, Gscshoyru, YuTanaka~enwiki, Arosa, Davidshq, The stuart,
Ta bu shi da yu, SimonEast, Ma'ame Michu, Coeehood, Moverton, Discospinster, Rhobite, ESkog, Neko-chan, Violetriga, CanisRufus,
Bobo192, TommyG, Cmdrjameson, Cwolfsheep, Mcornelius, Goa103~enwiki, TheProject, Minghong, Olivier Mengu, Sam Korn, Alansohn, Gary, Revmachine21, M7, Derumi, MarkGallagher, Sligocki, Robbie andrew, Hu, Shinjiman, Melaen, Rebroad, Stephan Leeds,
Rdrs~enwiki, Amelia Hunt, Alaudo, Contele de Grozavesti, Juicycat, Dysepsion, MassGalactusUniversum, SqueakBox, Ajcomeau, FreplySpang, Ryan Norton, Ketiltrout, Sjakkalle, Rjwilmsi, ElKevbo, Fred Bradstadt, FayssalF, FlaBot, SchuminWeb, RobertG, Jstaniek,
Riki, Intgr, GreyCat, King of Hearts, Chobot, Bgwhite, Peterl, YurikBot, Borgx, Jamesmorrison, Dreammaker182, FrenchIsAwesome,
John Quincy Adding Machine, Stephenb, Bug42, NawlinWiki, Wiki alf, Grafen, Tkbwik, ZacBowling, Dureo, Djm1279, Cleared as led,
Peter Delmonte, Zwobot, Kassie, BraneJ, Xpclient, Black Falcon, Wknight94, Sandstein, Schultkl, Paul Magnussen, Zzuuzz, Closedmouth,
David Jordan, JoanneB, Nae'blis, JLaTondre, ViperSnake151, Katieh5584, Tyomitch, Samuel Blanning, Boggie~enwiki, SmackBot, MattieTK, Colinstu, Reedy, Hydrogen Iodide, Georgeryp, Saintyboy666, Eskimbot, Gilliam, ERcheck, Manzell, Mr. Ash, Schmiteye, KD5TVI,
Timneu22, Konstable, A. B., Frap, Mindenn123, RandomStu, Yidisheryid, BWCNY, Aldaron, Krich, Decltype, RedKnight7, Warren,
Mwtoews, IGod, Ophir, Limbojones, Harryboyles, Rklawton, Teneri, Vanished user 9i39j3, Kuru, J. Finkelstein, M4bwav, Witharebelyell, Soumyasch, JHunterJ, Axeltroike, Iridescent, Pixi, Pjb007, Jaksmata, Mr. James, Charles Baynham, Courcelles, Linkspamremover,
Tawkerbot2, Rabbit994, Linuxerist, FleetCommand, Deon, Jaeger5432, Uildriks, Mika1h, Zippy1981, DanielRigal, Revloc02, Metatinara, Antalas, Necessary Evil, Kanags, Mikebrand, Reywas92, Llort, Skittleys, Lofote, Surturz, After Midnight, Omicronpersei8, CC90,
Epbr123, Cocoma, Wiki fanatic, Cyclonenim, Luna Santin, MetaManFromTomorrow, Paste, Tmopkisn, Cinnamon42, Dylan Lake, Rsocol, Marygabq, Lfstevens, Myanw, JAnDbot, Thinknirmal, MER-C, Ph.eyes, Michig, Kerotan, Hasek is the best, JamesBWatson, Jackz,
Whiskerz, Mdrn, Cander0000, Rajpaj, Stolsvik, AlexDybenko, Stephenchou0722, MartinBot, Rrabins, Wylve, R'n'B, CommonsDelinker,
LedgendGamer, J.delanoy, Uncle Dick, Katalaveno, Katharineamy, AntiSpamBot, Belovedfreak, SJP, W3stfa11, Tanaats, MetsFan76,
Juliancolton, Uhai, RogerJennings, Tagus, Dorftrottel, Useight, Zimbabwer, Rfdparker, Lights, Mal Browncoat, Scottmcd9999, Deor,
28bytes, TXiKiBoT, Jj0909jj, WysardOfInformation, Nico5038, Tuanese, Fredrick day, Lou.weird, LeaveSleaves, ^demonBot2, UnitedStatesian, GL1zdA, VictorReinhart, Cobraman156, Kawasemi, AgentCDE, !dea4u, Djmckee1, Ohei, Alcmaeonid, Atkinsdc, Uncle
Gizmo, ShotoSensei, Logan, EmxBot, Endtoend, Zamdrist, SaltyBoatr, SieBot, Cae prince, Josh the Nerd, This, that and the other, Flyer22,
CutOTies, Aruton, Steven Zhang, Dogloverxyz, Sushi500, Ctkeene, Silvergoat, Chillum, Javierluraschi, Mr. Stradivarius, Pinkadelica,
1stContact, ImageRemovalBot, Aamfk, Wugzr~enwiki, Sfan00 IMG, ClueBot, Zwikipenguin, The Thing That Should Not Be, Chad01,
Wysprgr2005, WDavis1911, Cp111, Razimantv, Lollol07, Hahaha07, CounterVandalismBot, Rprpr, Alexdyb, Hj3973, Excirial, LauraFarina, PixelBot, Dekisugi, WarKosign, Muro Bot, Kevyn82, Versus22, SoxBot III, Millennas, XLinkBot, Libcub, Latha P Nair, Addbot, Ghettoblaster, Jojhutton, Fyrael, Binary TSO, Ckredo, Njaelkies Lea, D0762, Ted.macneil, Fluernutter, MartinTallett, MrOllie,
Download, Glane23, SDSWIKI, Jasper Deng, Tyw7, , Tide rolls, Barcelona Wiki, Pvercello, Legobot, Luckas-bot, Yobot,
Tohd8BohaithuGh1, Fraggle81, II MusLiM HyBRiD II, THEN WHO WAS PHONE?, Gavin Lisburn, IW.HG, AnomieBOT, Cmc87, Piano non troppo, Kingpin13, Law, Ulric1313, Materialscientist, The High Fin Sperm Whale, Elm-39, Wikinator2008, Mike12345678, Acebulf, Mopza, The Evil IP address, J04n, GrouchoBot, DataAnalyzer, Santiagoagentino, GNRY09, Shadowjams, Alexander.hugh.george,
FrescoBot, Surv1v4l1st, , Nexusdb, Nainawalli, Kwiki, Genesispc, ClickRick, Amicron, Winterst, I dream of horses, Vicenarian,
Jnl001, Hellknowz, Hawaiian Eskimo, TAIntedCHInese, North8000, Amiodarone, Mewkalewk, Deathtreath93, Jhenderson777, Suusion of Yellow, Chabgo, Tbhotch, Reach Out to the Truth, TjBot, Albert Kallal, Alzarian16, Phlegat, Forenti, ETomeny, John of Reading, , Hubalu, Thnder, Immunize, Todorojo, Dcirovic, K6ka, Gaudoine, AvicBot, The Dark Melon, Valdez123,
Rodgerbeard, Donner60, Diamondland, ClueBot NG, Theslick50, NamelessDude49, Taruz~enwiki, Pizza1016, Widr, WikiPuppies, Zackaback, Jykosu11, Helpful Pixie Bot, Sirgshar, Mary Spencer 20, BG19bot, Ubruni, Wiki13, ThaProjects THA, Mark Arsten, Nathanpc,
Amaljoseph24, HMman, Dpritchett0320, BattyBot, Sa145, ExpertDBDev, Ryanmay123455, Draconxanathos, Gdfusion, Comatmebro,
Khazar2, Rezonansowy, Codename Lisa, The Witty Warrior, Graphium, Sfgiants1995, Corn cheese, The Anonymouse, RandomLittleHelper, Mdrnpndr, Bananasoldier, Everymorning, JackWilfred, DavidLeighEllis, Mggpublishing, My name is not dave, Ginsuloft, Jackmcbarn, Reyhaanbinny, Monkbot, Jevmonteron98, SantiLak, Tbrennan33, ChamithN, BU Rob13 and Anonymous: 707

12.2

Images

File:Access.PNG Source: https://upload.wikimedia.org/wikipedia/en/0/09/Access.PNG License: ? Contributors:


Shot by Codename Lisa (talk contribs) Original artist: ?
File:Commons-logo.svg Source: https://upload.wikimedia.org/wikipedia/en/4/4a/Commons-logo.svg License: ? Contributors: ? Original
artist: ?
File:Folder_Hexagonal_Icon.svg Source: https://upload.wikimedia.org/wikipedia/en/4/48/Folder_Hexagonal_Icon.svg License: Cc-bysa-3.0 Contributors: ? Original artist: ?
File:Microsoft_Access_2013_logo.svg Source: https://upload.wikimedia.org/wikipedia/commons/3/37/Microsoft_Access_2013_logo.
svg License: Public domain Contributors: This le has been extracted from another le: Microsoft Oce 2013 logos lineup.svg.
Original artist: Micrososft
File:Microsoft_Office_2013_logo.svg Source: https://upload.wikimedia.org/wikipedia/commons/d/dd/Microsoft_Office_2013_logo.
svg License: Public domain Contributors: This le is derived from Microsoft Oce 2013.svg. Original artist: Microsoft Corporation
File:Question_book-new.svg Source: https://upload.wikimedia.org/wikipedia/en/9/99/Question_book-new.svg License: Cc-by-sa-3.0
Contributors:
Created from scratch in Adobe Illustrator. Based on Image:Question book.png created by User:Equazcion Original artist:
Tkgd2007

12.3

Content license

11

File:Symbol_book_class2.svg Source: https://upload.wikimedia.org/wikipedia/commons/8/89/Symbol_book_class2.svg License: CC


BY-SA 2.5 Contributors: Mad by Lokal_Prol by combining: Original artist: Lokal_Prol
File:Wikiversity-logo.svg Source: https://upload.wikimedia.org/wikipedia/commons/9/91/Wikiversity-logo.svg License: CC BY-SA 3.0
Contributors: Snorky (optimized and cleaned up by verdy_p) Original artist: Snorky (optimized and cleaned up by verdy_p)

12.3

Content license

Creative Commons Attribution-Share Alike 3.0

You might also like