Microsoft access table

Microsoft access table DEFAULT

Becoming familiar with the tables, forms, queries, and other objects in an Access database can make it easier to perform a wide variety of tasks, such as entering data into a form, adding or removing tables, finding and replacing data, and running queries.

This article provides a basic overview of the structure of an Access database. Access provides several tools that you can use to familiarize yourself with the structure of a particular database. This article also explains how, when, and why you use each tool.

Note: This article is about traditional Access databases that consist of a file or set of files that contains all the data and application features, such as data entry forms. Some of it does not apply to Access web databases and Access web apps.

In this article


A database is a collection of information that is related to a particular subject or purpose, such as tracking customer orders or maintaining a music collection. If your database isn't stored on a computer, or only parts of it are, you may be tracking information from a variety of sources that you must coordinate and organize.

For example, suppose the phone numbers of your suppliers are stored in various locations: in a card file containing supplier phone numbers, in product information files in a file cabinet, and in a spreadsheet containing order information. If a supplier's phone number changes, you might have to update that information in all three places. In a well-designed Access database, the phone number is stored just once, so you only have to update that information in one place. As a result, when you update a supplier's phone number, it is automatically updated wherever you use it in the database.

Access database files

You can use Access to manage all of your information in one file. Within an Access database file, you can use:

  • Tables to store your data.

  • Queries to find and retrieve just the data that you want.

  • Forms to view, add, and update data in tables.

  • Reports to analyze or print data in a specific layout.

Data from tables used in a query, form, and report

1. Store data once in one table, but view it from multiple locations. When you update the data, it's automatically updated everywhere it appears.

2. Retrieve data by using a query.

3. View or enter data by using a form.

4. Display or print data by using a report.

All of these items — tables, queries, forms, and reports — are database objects.

Note: Some Access databases contain links to tables that are stored in other databases. For example, you may have one Access database that contains nothing but tables, and another Access database that contains links to those tables, as well as queries, forms, and reports that are based on the linked tables. In most cases, it does not matter whether a table is a linked table or actually stored in the database.

Tables and relationships

To store your data, you create one table for each type of information that you track. Types of information might include customer information, products, and order details. To bring the data from multiple tables together in a query, form, or report, you define relationships between the tables.

Note: In a web database or web app, you cannot use the Relationships object tab to create relationships. You can use lookup fields to create relationships in a web database or web app.

Data stored in tables joined on related fields

1. Customer information that once existed in a mailing list now resides in the Customers table.

2. Order information that once existed in a spreadsheet now resides in the Orders table.

3. A unique ID, such as a Customer ID, distinguishes one record from another within a table. By adding one table's unique ID field to another table and defining a relationship between the two fields, Access can match related records from both tables so that you can bring them together in a form, report, or query.


A query can help you find and retrieve the data that meets conditions that you specify — including data from multiple tables. You can also use a query to update or delete multiple records at the same time and to perform predefined or custom calculations on your data.

Note: You cannot use a query to update or delete records in a web database or web app.

A query returning results from different tables

1. The Customers table has information about customers.

2. The Orders table has information about customer orders.

3. This query retrieves the Order ID and Required Date data from the Orders table, and the Company Name and City data from the Customers table. The query returns only orders that were required in April, and only for customers who are based in London.


You can use a form to easily view, enter, and change data one row at a time. You can also use a form to perform other actions, such as sending data to another application. Forms typically contain controls that are linked to underlying fields in tables. When you open a form, Access retrieves the data from one or more of those tables, and then displays the data in the layout that you chose when you created the form. You can create a form by using one of the Form commands on the Ribbon, the Form Wizard, or create a form yourself in Design view.

Note: You use Layout view, not Design view, to create forms and reports in web databases and web apps.

Forms can help you view and enter data

1. A table displays many records at the same time, but you may have to scroll horizontally to see all of the data in a single record. Also, when you view a table, you can't update data from more than one table at the same time.

2. A form focuses on one record at a time, and it can display fields from more than one table. It can also display pictures and other objects.

3. A form can contain a button that you click to print a report, open other objects, or otherwise automate tasks.


You can use a report to quickly analyze your data or to present it a certain way in print or in other formats. For example, you may send a colleague a report that groups data and calculates totals. Or, you may create a report with address data formatted for printing mailing labels.

Reports showing formatted or calculated data

1. Use a report to create mailing labels.

2. Use a report to show totals in a chart.

3. Use a report to display calculated totals.

Now that you know about the basic structure of Access databases, read on to learn how to use the built-in tools to explore a particular Access database.

See details about the objects in a database

One of the best ways to learn about a particular database is by using the Database Documenter. You use the Database Documenter to build a report containing detailed information about the objects in a database. You first choose which objects will be detailed in the report. When you run the Database Documenter, its report contains all of the data about the database objects that you selected.

  1. Open the database that you want to document.

  2. On the Database Tools tab, in the Analyze group, click Database Documenter.

  3. In the Documenter dialog box, click the tab that represents the type of database object that you want to document. To create a report on all of the objects in a database, click the All Object Types tab.

  4. Select one or more of the objects listed on the tab. To select all of the objects on a tab, click Select All.

  5. Click OK.

    The Database Documenter creates a report that contains detailed data for each selected object, and then opens the report in Print Preview. For example, if you run the Database Documenter against a data entry form, the report created by the Documenter lists the properties for the form as a whole, the properties for each of the sections in the form, and the properties for any buttons, labels, text boxes, and other controls on the form, plus any code modules and user permissions that are associated with the form.

  6. To print the report, on the Print Preview tab, in the Print group, click Print.

Explore a table in Design view

Note: Design view is not available for tables in web databases.

Opening a table in Design view gives you a detailed look at the table's structure. For example, you can find the data type setting for each field, find any input masks, or see if the table uses any lookup fields — fields that use queries to extract data from other tables. This information is useful because data types and input masks can affect your ability to find data and run update queries. For example, suppose that you want to use an update query to update particular fields in one table by copying data in similar fields from another table. The query will not run if the data types for each field in the source and destination tables don't match.

  1. Open the database that you want to analyze.

  2. In the Navigation Pane, right-click the table that you want to explore, and then click Design View on the shortcut menu.

  3. As needed, note the name of each table field and the data type assigned to each field.

    The data type assigned to a field can limit the size and type of data that users can enter in a field. For example, users may be limited to 20 characters in a text field, and cannot enter text data in a field set to the Number data type.

  4. To determine whether a field is a lookup field, click the Lookup tab in the lower section of the table design grid, under Field Properties.

    A lookup field displays one set of values (one or more fields, such as a first and last name), but usually stores a different set of values (one field, such as a numeric ID). For example, a lookup field may store an employee's ID number (the stored value), but it displays the employee's name (the displayed value). When you use a lookup field in expressions or in find and replace operations, you use the stored value, not the displayed value. Becoming familiar with the stored and displayed values of a lookup field is the best way to make sure that an expression or a find and replace operation that uses the lookup field works the way that you expect.

    The following illustration shows a typical lookup field. Remember that the settings that you see in the Row Source property of the field will vary.

    Using a table or query as the data source for a lookup field

    The lookup field shown here uses a query to retrieve data from another table. You may also see another type of lookup field, called a value list, that uses a hard-coded list of choices. This figure shows a typical value list.

    Using a value list as the data source for a lookup field

    By default, value lists use the Text data type.

    The best way to find lookup and value lists is by displaying the Lookup tab, and then clicking the entries in the Data Type column for each field in the table. For more information about creating lookup fields and value lists, see the links in the See Also section.

Top of Page

See the relationships between tables

To see a graphical representation of the tables in a database, the fields in each table, and the relationships between those tables, use the Relationships object tab. The Relationships object tab provides an overall picture of the table and relationship structure of a database — crucial information when you need to create or change the relationships between tables.

Note: You can also use the Relationships object tab to add, change, or delete relationships.

  • Open the database that you want to analyze.

  • On the Database Tools tab, in the Relationships group, click Relationships.

The Relationships object tab appears and shows you the relationships between all of the tables in the open database.

a relationship between two tables

Note: You cannot use the Relationships object tab in a web database or web app.

Top of Page

Use the Object Dependencies pane to see how objects relate

Introduction to tables

Introduction to data types and field properties

Introduction to queries

Introduction to forms


Access 2016: Working with Tables

Lesson 5: Working with Tables



While there are four types of database objects in Access, tables are arguably the most important. Even when you're using forms, queries, and reports, you're still working with tables because that's where all of your data is stored. Tables are at the heart of any database, so it's important to understand how to use them.

In this lesson, you will learn how to open tables, create and edit records, and modify the appearance of your table to make it easier to view and work with.

Throughout this tutorial, we will be using a sample database. If you would like to follow along, you'll need to download our Access 2016 sample database. You will need to have Access 2016 installed on your computer in order to open the example.

Watch the video below to learn more about working with tables in Access.

Table basics

To open an existing table:

  1. Open your database, and locate the Navigationpane.
  2. In the Navigation pane, locate the table you want to open.
  3. Double-click the desired table.
    Opening a table
  4. The table will open and appear as a tab in the Document Tabsbar.
    The open table

Understanding tables

All tables are composed of horizontal rows and vertical columns, with small rectangles called cells in the places where rows and columns intersect. In Access, rows and columns are referred to as records and fields.

A field is a way of organizing information by type. Think of the field name as a question and every cell within that field as a response to that question. In our example, the Last Name field is selected, which contains all the last names in the table.

Fields and field names

A record is one unit of information. Every cell on a given row is part of that row's record. In our example, Quinton Boyd's record is selected, which contains all of the information related to him in the table.

Records and record ID numbers

Each record has its own ID number. Within a table, each ID number is unique to its record and refers to all of the information within that record. The ID number for a record cannot be changed.

Each cell of data in your table is part of both a field and a record. For instance, if you had a table of names and contact information, each person would be represented by a record, and each piece of information about each person—name, phone number, address, and so on—would be contained within a distinct field on that record's row.

Click the buttons in the interactive below to learn how to navigate a table.

Navigating within tables

The bar at the bottom of the table contains many commands to help you search or scroll through records.

  • To navigate through records in a table, you can use the up and downarrow keys, scroll up and down, or use the arrows in the Record Navigation bar located at the bottom of your table.
    The Record Navigation bar
  • You can create a new record with the new (blank) record command on the Record Navigation bar.
    The New Record command
  • You can find any record in the currently open table by searching for it using the record search box. Place your cursor in the search box, type any word that appears in the record you want to find, and press the Enter key.
    The record search box

To navigate between fields, you can use the left and right arrow keys or scrollleft and right.

Adding records and entering data

Entering data into tables in Access is similar to entering data in Excel. To work with records, you'll have to enter data into cells. If you need help entering data into records, you might want to review our Cell Basics lesson from our Excel 2016 tutorial.

To add a new record:

There are three ways to add a new record to a table:

  • In the Records group on the Home tab, click the New command.
    Adding a new record from the Ribbon
  • On the Record Navigation bar at the bottom of the window, click the New record button.
    Adding a new record from the Record Navigation bar
  • Begin typing in the row below your last added record.
    Adding a new record by typing in the row under the last record

Sometimes when you enter information into a record, a window will pop up to tell you that the information you've entered is invalid. This means the field you're working with has a validation rule, which is a rule about the type of data that can appear in that field. Click OK, then follow the instructions in the pop-up window to re-enter your data.

An example of a validation warning

To save a record:

Access is designed to save records automatically. After you enter a record, you can either select a different record or close the object, and Access will save the record. However, in certain situations you many want to save a record manually. For example, if you needed to edit an existing record, you could save the record to ensure your changes are saved.

  1. Select the Home tab, and locate the Records group.
  2. Click the Save command. The record will be saved.
Saving a record

Editing records

To quickly edit any record within a table, you can click it and type your changes. However, Access offers you the ability to find and replace a word within multiple records and delete records entirely.

To replace a word within a record:

You can edit multiple occurrences of the same word by using Find and Replace, which searches for a term and replaces it with another term.

  1. Select the Home tab, and locate the Find group.
  2. Select the Replace command. The Find and Replace dialog box will appear.
    Clicking the Replace command
  3. In the Find What: field, type the word you want to find, then in the Replace With: field type the word you want to replace the original word. In our example, we'll find instances of the word Fall and replace it with Autumn.
    Entering the replacement text
  4. Click the Look In: drop-down arrow to select the area you want to search. Select Current Field to limit your search to the currently selected field. Select Current Document to search within the entire table.
    Choosing where in the table to look
  5. Click the Match: drop-down arrow to select how closely you'd like results to match your search. Select Any Part of Field to search for your search term in any part of a cell. Select Whole Field to search only for cells that match your search term exactly. Select Beginning of Field to search only for cells that start with your search term.
    Choosing how closely the records should match your search
  6. Click Find Next. If the text is found, it will be selected.
    Clicking Find Next to view the next match for your search
  7. Review the text to make sure you want to replace it. Click Replace to replace the original word with the new one.
    Replacing the original word with a new one
  8. Access will move to the next instance of the text in the object. When you are finished replacing text, click Cancel to close the dialog box.

The Replace All option is powerful, but it may actually change some things you don't want to change. In the example below, the word fall did not refer to the season, so replacing it with Autumn would be incorrect. Using the normal Replace option allows you check each instance before replacing the text. You can click Find Next to skip to the next instance without replacing the text.

The unintended consequences of choosing Replace All

To delete a record:

  1. Select the entire record by clicking the gray border on the left side of the record.
    Selecting a record
  2. Select the Home tab and locate the Records group.
  3. Click the Delete command.
    Clicking the Delete Command
  4. A dialog box will appear. Click Yes.
    Deleting a record
  5. The record will be permanently deleted.

The ID numbers assigned to records stay the same even after you delete a record. For example, if you delete the 205th record in a table, the sequence of record ID numbers will read ... 204, 206, 207 ... rather than ... 204, 205, 206, 207 ...

A missing ID number after a record has been deleted

Modifying table appearance

Access offers various ways to modify the appearance of tables, including resizing fields and rows and temporarily hiding information you don't need to see. These changes aren't just about making your table look good; they also can make the table easier to read.

Watch the video below to learn more about customizing tables.

Resizing fields and rows

If your fields and rows are too small or large for the data contained with them, you can always resize them so all of the text is displayed.

To resize a field:

  1. Place your cursor over the right gridline in the field title. Your mouse will become a double arrow.
    Resizing a field
  2. Click and drag the gridline to the right to increase the field width or to the left to decrease the field width, then release the mouse. The field width will be changed.
    The resized field

To resize a row:

  1. Place your cursor over the bottom gridline in the gray area to the left of the row. Your mouse will become a double arrow.
    Resizing a row
  2. Click and drag the gridline downward to increase the row height or upward to decrease the row height, then release the mouse. The row height will be changed.
    The resized row

Hiding fields

If you have a field you don't plan on editing or don't want other people to edit, you can hide it. A hidden field is invisible but is still part of your database. Data within a hidden field can still be accessed from forms, queries, reports, and any related tables.

To hide a field:

  1. Right-click the field title, then select Hide Fields.
    Hiding a field
  2. The field will be hidden.

If you decide you want the field to be visible again, you can unhide it. Simply right-click any field title, then select Unhide Fields. A dialog box will appear. Click the checkboxes of any fields you want to be visible again, then click Close.

Unhiding a hidden field

Table formatting options

Alternate row color

By default, the background of every other row in an Access table is a few shades darker than the background of the rest of the table. This darker alternate row color makes your table easier to read by offering a visual distinction between each record and the records directly above and below it.

A table with alternate row colors

To change the alternate row color:

  1. Select the Home tab, locate the Text Formatting group, and click the Alternate Row Color drop-down arrow.
    Clicking the Alternate Row Color drop-down arrow
  2. Select a color from the drop-down menu, or select No Color to remove the alternate row color.
    Choosing a row color
  3. The alternate row color will be updated.
    The updated alternate row color

Modifying gridlines

Another way Access makes your tables easier to read is by adding gridlines that mark the borders of each cell. Gridlines are the thin lines that appear between each cell, row, and column of your table. By default, gridlines are dark gray and appear on every side of a cell, but you can change their color and hide undesired gridlines.

Horizontal and vertical gridlines

To customize which gridlines appear:

  1. Select the Home tab, locate the Text Formatting group, and click the Gridlines drop-down arrow.
    The Gridlines drop-down arrow
  2. Select the gridlines you want to appear. You can choose to have horizontal gridlines between the rows, vertical gridlines between the columns, both types of gridlines, or none at all.
    Selecting horizontal gridlines
  3. The gridlines on your table will be updated.
    The updated horizontal-only gridlines

Additional formatting options

To view additional formatting options, click the Datasheet Formatting arrow in the bottom-right corner of the Text Formatting group.

Clicking the Datasheet Formatting arrow

The Datasheet Formatting dialog box offers several advanced formatting options, including the ability to modify background color, gridline color, and border and line style. It even includes the ability to view a sample table with your formatting choices, so play around with the various formatting options until you get your table looking the way you want it.

Changing the table background color, gridline color, and border and line style


  1. Open our practice database.
  2. Open the Customers table.
  3. Add a new record to the table. Be sure to enter data for every field.
  4. Find the record with the name Sula Smart, and replace it with a name of your choice.
  5. Hide a field, then unhide it.
  6. Change the alternate row color.


  1. Gcp grace
  2. Toll traduccion
  3. Nascar truck daytona results
  4. Henry schein ems

Tables are essential objects in a database because they hold all the information or data. For example, a database for a business can have a Contacts table that stores the names of their suppliers, e-mail addresses, and telephone numbers. Because other database objects depend so heavily on tables, you should always start your design of a database by creating all of its tables and then creating any other objects. Before you create tables, consider your requirements and determine all the tables that you might need. For an introduction to planning and designing a database, see Database design basics.

In this article


A relational database like Access usually has several related tables. In a well-designed database, each table stores data about a particular subject, such as employees or products. A table has records (rows) and fields (columns). Fields have different types of data, such as text, numbers, dates, and hyperlinks.

Customers table in Access showing layout of records and fields

  1. A record: Contains specific data, like information about a particular employee or a product.

  2. A field: Contains data about one aspect of the table subject, such as first name or e-mail address.

  3. A field value: Each record has a field value. For example, Contoso, Ltd. or [email protected]

Top of Page

Table and field properties

Tables and fields also have properties that you can set to control their characteristics or behavior.

Table and field property sheets

1. Table properties

2. Field properties

In an Access database, table properties are attributes of a table that affect the appearance or behavior of the table as a whole. Table properties are set in the table's property sheet, in Design view. For example, you can set a table's Default View property to specify how the table is displayed by default.

A field property applies to a particular field in a table and defines one of the field's characteristics or an aspect of the field's behavior. You can set some field properties in Datasheet view. You can also set any field property in Design view by using the Field Properties pane.

Data types

Every field has a data type. A field's data type indicates the kind of data that the field stores, such as large amounts of text or attached files.

Data type setting

A data type is a field property, but it differs from other field properties as follows:

  • You set a field's data type in the table design grid, not in the Field Properties pane.

  • A field's data type determines what other properties the field has.

  • You must set a field's data type when you create the field.

    You can create a new field in Access by entering data in a new column in Datasheet view. When you create a field by entering data in Datasheet view, Access automatically assigns a data type for the field, based on the value that you enter. If no other data type is implied by your input, Access sets the data type to Text. If needed, you can change the data type by using the Ribbon.

Examples of automatic data type detection

The following table shows how automatic data type detection works in Datasheet view.

If you enter:

Access creates a field with a data type of:



You can use any valid Internet protocol prefix. For example, http://, https://, and mailto: are valid prefixes.



Number, Long Integer


Number, Long Integer


Number, Double


Number, Double


The date and time formats recognized are those of your user locale.


December 31, 2016




10:50 am





The currency symbol recognized is that of your user locale.



Number, Double


Number, Double


Number, Double

Top of Page

Table relationships

Although each table stores data about a different subject, tables in an Access database usually store data about subjects that are related to each other. For example, a database might contain:

  • A customers table that lists your company’s customers and their addresses.

  • A products table that lists the products that you sell, including prices and pictures for each item.

  • An orders table that tracks customer orders.

Because you store data about different subjects in separate tables, you need some way to tie the data together so that you can easily combine related data from those separate tables. To connect the data stored in different tables, you create relationships. A relationship is a logical connection between two tables that specifies fields that the tables have in common. For more information, see Guide to table relationships.

Top of Page


Fields that are part of a table relationship are called keys. A key usually consists of one field, but may consist of more than one field. There are two kinds of keys:

  • Primary key    A table can have only one primary key. A primary key consists of one or more fields that uniquely identify each record that you store in the table. Often, there is a unique identification number, such as an ID number, a serial number, or a code, that serves as a primary key. For example, you might have a Customers table where each customer has a unique customer ID number. The customer ID field is the primary key of the Customers table. When a primary key contains more than one field, it is usually composed of pre-existing fields that, taken together, provide unique values. For example, you might use a combination of last name, first name, and birth date as the primary key for a table about people. For more information, see adding or changing a table’s primary key.

  • Foreign key    A table can also have one or more foreign keys. A foreign key contains values that correspond to values in the primary key of another table. For example, you might have an Orders table in which each order has a customer ID number that corresponds to a record in a Customers table. The customer ID field is a foreign key of the Orders table.

The correspondence of values between key fields forms the basis of a table relationship. You use a table relationship to combine data from related tables. For example, suppose that you have a Customers table and an Orders table. In your Customers table, each record is identified by the primary key field, ID.

To associate each order with a customer, you add a foreign key field to the Orders table that corresponds to the ID field of the Customers table, and then create a relationship between the two keys. When you add a record to the Orders table, you use a value for customer ID that comes from the Customers table. Whenever you want to view any information about an order's customer, you use the relationship to identify which data from the Customers table corresponds to which records in the Orders table.

An Access table relationship shown in the Relationships window

1. A primary key, identified by the key icon next to the field name.

2. A foreign key — note the absence of the key icon.

Do not add a field if you expect that each unique entity represented in the table might require more than value for the field. Continuing the preceding example, if you want to start tracking orders placed by your customers, you do not add a field to the table, because each customer will have more than one order. Instead, you create a new table to store orders, and then create a relationship between the two tables.

Top of Page

Benefits of using relationships

Keeping data separated in related tables produces the following benefits:

  • Consistency    Because each item of data is recorded only once, in one table, there is less opportunity for ambiguity or inconsistency. For example, you store a customer's name only once, in a table about customers, rather than storing it repeatedly (and potentially inconsistently) in a table that contains order data.

  • Efficiency    Recording data in only one place means you use less disk space. Moreover, smaller tables tend to provide data more quickly than larger tables. Finally, if you don't use separate tables for separate subjects, you will introduce null values (the absence of data) and redundancy into your tables, both of which can waste space and impede performance.

  • Comprehensibility    The design of a database is easier to understand if the subjects are properly separated into tables.

Plan your tables with relationships in mind. You can use the Lookup Wizard to create a foreign key field if the table that contains the corresponding primary key already exists. The Lookup Wizard creates the relationship for you. For more information, see Create or delete a lookup field.

Top of Page

Create a table and add fields

How to use Microsoft Access - Beginner Tutorial

How to Open a Table in Design View in Microsoft Access

While Datasheet view lets you work directly with the data in tables, Design view takes you behind the scenes to work with the table structure. In Design view you have much finer control over how the fields in your data are defined and validated. You can open a closed table in Design view with just a few clicks.

This feature works the same in all modern versions of Microsoft Access: 2010, 2013, and 2016.

  1. Locate the table in the and right-click on it. Right-Click on Table
  2. From the shortcut menu, select . The table object opens as a tab on the work surface. Select Design View

If a table is already open in Datasheet view, you can switch to Design view by clicking the icon in the toolbar. Switch to Design View


Access table microsoft

When you create an Access database, you store your data in tables—subject-based lists that contain rows and columns. For instance, you can create a Contacts table to store a list of names, addresses, and telephone numbers, or a Products table to store information about products. This article explains how to create a table, add fields to a table, set a table's primary key, and how to set field and table properties.

Before you create tables and add fields, make sure you understand the background concepts. For more information, see Introduction to tables.

In this article

Creating a table

A simple database, such as a contact list, might use only a single table. Many databases, however, use several tables. When you create a new database, you create a new file on your computer that acts as a container for all of the objects in your database, including your tables.

You can create a table by creating a new database, by inserting a table into an existing database, or by importing or linking to a table from another data source — such as a Microsoft Excel workbook, a Microsoft Word document, a text file, or another database. When you create a new, blank database, a new, empty table is automatically inserted for you. You can then enter data in the table to start defining your fields.

Top of Page

Create a new table in a new database

  1. Click File > New, and then select Blank desktop database.

  2. In the File Name box, type a file name for the new database.

  3. To browse to a different location and save the database, click the folder icon.

  4. Click Create.

    The new database opens, and a new table named Table1 is created and opens in Datasheet view.

Top of Page

Create a new table in an existing database

  1. Click File > Open, and click the database if it is listed under Recent. If not, select one of the browse options to locate the database.

  2. In the Open dialog box, select the database that you want to open, and then click Open.

  3. On the Create tab, in the Tables group, click Table.

    A new table is inserted in the database and the table opens in Datasheet view.

Top of Page

Importing or linking to create a table

You can create a table by importing or linking to data that is stored elsewhere. You can import or link to data in an Excel worksheet, a SharePoint list, an XML file, another Access database, a Microsoft Outlook folder, and more.

When you import data, you create a copy of the data in a new table in the current database. Subsequent changes to the source data will have no effect on the imported data, and changes to the imported data do not affect the source data. After you connect to a data source and import its data, you can then use the imported data without connecting to the source. You can change the design of an imported table.

When you link to data, you create a linked table in the current database that represents a live link to the existing information that is stored elsewhere. When you change data in a linked table, you are changing it in the source. Whenever data changes in the source, that change is shown in the linked table. You must be able to connect to the data source whenever you use a linked table. You cannot change the design of a linked table.

Note: You cannot edit data in an Excel worksheet by using a linked table. As a workaround, import the source data into an Access database, and then link to the database from Excel.

Top of Page

Create a new table by importing or linking to external data

  1. Click File > Open.

  2. In the Open dialog box, select and open the database in which you wish to create a new table.

  3. On the External Data tab, in the Import & Link group, click one of the available data sources. 

    Access Ribbon Image

  4. Follow the instructions in the dialog boxes that appear at each step.

    Access creates the new table and displays it in the Navigation Pane.

Top of Page

Use a SharePoint site to create a table

You can create a table in your database that imports from or links to a SharePoint list. You can also create a new SharePoint list by using a predefined template. The predefined templates in Access include Contacts, Tasks, Issues, and Events.

  1. Click File > Open.

  2. In the Open dialog box, select the database in which you want to create the new table, and then click Open.

  3. On the Create tab, in the Tables group, click SharePoint Lists.

  4. Do one of the following:

    Create a SharePoint list that is based on a template

    1. Click either Contacts, Tasks, Issues, or Events.

    2. In the Create New List dialog box, type the URL for the SharePoint site where you want to create the list.

    3. Enter a name for the new list and its description in the Specify a name for the new list and Description boxes.

    4. To open the linked table after it is created, select the Open the list when finished check box (selected by default).

    Create a custom list

    1. Click Custom.

    2. In the Create New List dialog box, type the URL for the SharePoint site where you want to create the list.

    3. Enter a name for the new list and its description in the Specify a name for the new list and Description boxes.

    4. To open the linked table after it is created, select the Open the list when finished check box (selected by default).

    Import the data from an existing list

    1. Click Existing SharePoint List.

    2. In the Get External Data dialog box, type the URL for the SharePoint site that contains the data that you want to import.

    3. Click Import the source data into a new table in the current database, and then click Next.

    4. Select the check box next to each SharePoint list that you want to import.

    Link to a list

    1. Click Existing SharePoint List.

    2. In the Get External Data - SharePoint Site dialog box, type the URL for the SharePoint site that contains the list to which you want to link.

    3. Click Link to the data source by creating a linked table, and then click Next.

    4. Select the check box next to each SharePoint list to which you want to link.

Top of Page

Use a Web service to create a table

You can create a table in your database that connects to data at a Web site that provides a Web service interface. Web service tables are read-only.

  1. On the External Data tab, in the Import & Link group, click More and then click Data Services.

  2. If the connection you want to use has already been installed, skip to step 5. Otherwise, continue with the next step.

  3. Click Install new connection.

  4. Select the connection file that you want to use, and then click OK.

  5. In the Create Link to Web Service Data dialog box, expand the connection that you want to use.

  6. Select the table that you want to link to. Access displays the fields on the right side of the dialog box.

  7. Optionally, type a name for the linked table in the Specify link name box. Access will use this name for the linked table in the Navigation Pane.

  8. Click OK. Access creates the linked table.

Top of Page

Set a table's properties

In addition to setting properties fields, you can also set properties that apply to an entire table or to entire records.

  1. Select the table whose properties you want to set.

  2. On the Home tab, in the Views group, click View, and then click Design View.

  3. On the Design tab, in the Show/Hide group, click Property Sheet.

    Show/Hide group on the Design tab in Access

    The table property sheet is shown.

  4. On the property sheet, click the General tab.

  5. Click the box to the left of the property that you want to set, and then enter a setting for the property.

    Don't forget to Press CTRL+S to save your changes.

    Use this table property


    Display Views On SharePoint Site

    Specify whether views that are based on the table can be displayed on a SharePoint site.

    Note: The effects of this setting depend on the setting of the Display All Views On SharePoint Site database property.

    Subdatasheet Expanded

    Expand all subdatasheets when you open the table.

    Subdatasheet Height

    Do one of the following:

    • If you want the subdatasheet window to expand to display all rows, leave this property set at 0".

    • If you want to control the height of the subdatasheet, enter the desired height in inches.


    Set the view orientation, according to whether your language is read left-to-right, or right-to-left.


    Provide a description of the table. This description will appear in tooltips for the table.

    Default View

    Set Datasheet, PivotTable, or PivotChart as the default view when you open the table. PivotTable and PivotChart options were removed from Access starting in Access 2013.

    Validation Rule

    Enter an expression that must be true whenever you add or change a record.

    Validation Text

    Enter a message that is displayed when a record violates the expression in the Validation Rule property.


    Define criteria to display only matching rows in Datasheet view.

    Order By

    Select one or more fields to specify the default sort order of rows in Datasheet view.

    Subdatasheet Name

    Specify whether a subdatasheet should appear in Datasheet view, and if so, which table or query should supply the rows in the subdatasheet.

    Link Child Fields

    List the fields in the table or query that are used for the subdatasheet that match the Link Master Fields property that is specified for the table.

    Link Master Fields

    List the fields in the table that match the Link Child Fields property that is specified for the table.

    Filter On Load

    Automatically apply the filter criteria in the Filter property (by setting to Yes) when the table is opened in Datasheet view.

    Order By On Load

    Automatically apply the sort criteria in the Order By property (by setting to Yes) when the table is opened in Datasheet view.

    Tip    To provide more space to enter or edit a setting in the property box, press SHIFT+F2 to display the Zoom box. If you are setting the Validation Rule property to an expression and would like help in building it, click Builder button next to the ValidationRule property box to display the Expression Builder.

Top of Page

Save a table

After you create or modify a table, you should save its design. When you save a table for the first time, give it a name that describes the data that it contains. You can use up to 64 alphanumeric characters, including spaces. For example, you might name a table Customers, Parts Inventory, or Products.

Access gives you lots of flexibility when it comes to naming your tables; however, there are some restrictions to be aware of. A table name can be up to 64 characters long, can include any combination of letters, numbers, spaces, and special characters except a period (.), exclamation point (!), square brackets ([]), leading space, leading equal sign (=), or nonprintable character such as a carriage return. The name also cannot contain any of the following characters:` / \ : ; * ? " ' < > | # <TAB> { } % ~ &.

Tip: You should decide on a naming convention for the objects in your database, and use it consistently.

  1. Select File > Save, or press CTRL+S.

  2. If you are saving the table for the first time, type a name for the table, and then click OK.

Top of Page

Setting a primary key

Unless you have a specific reason not to, you should specify a primary key for a table. Access automatically creates an index for the primary key, which can help improve database performance. Access also makes sure that every record has a value in the primary key field, and that the value is always unique. Unique values are crucial, because otherwise there is no way to reliably distinguish a particular row from other rows.

When you create a new table in Datasheet view, Access automatically creates a primary key for you and assigns it a field name of ID and the AutoNumber data type.

In Design view, you can change or remove the primary key, or set the primary key for a table that doesn't already have one.

Top of Page

Determine which fields to use as a primary key

Sometimes, you might already have data that you want to use as a primary key. For example, you may have existing ID numbers for your employees. If you create a table to track employee information, you might decide to use the existing employee ID as the primary key for the table. Or, perhaps employee ID is only unique in combination with department ID, requiring that you use both fields together as the primary key. A good candidate for the primary key has the following characteristics:

  • Each record has a unique value for the field or combination of fields.

  • The field or combination of fields is never empty or null — there is always a value.

  • The values do not change.

If no suitable data exists to use as a primary key, you can create a new field to use as a primary key. When you create a new field to use as a primary key, set the field's data type to AutoNumber to help make sure that it meets the three characteristics in the preceding list.

Top of Page

Set or change the primary key

  1. Select the table whose primary key you want to set or change.

  2. On the Home tab, in the Views group, click View, and then click Design View.

  3. In the table design grid, select the field or fields that you want to use as the primary key.

    To select one field, click the row selector for the field that you want.

    To select more than one field, hold down CTRL, and then click the row selector for each field.

  4. On the Design tab, in the Tools group, click Primary Key.

    Tools group on the Design tab

    A key indicator appears to the left of the field or fields that you specify as the primary key.

Top of Page

Remove the primary key

  1. Select the table whose primary key you want to remove.

  2. On the Home tab, in the Views group, click View, and then click Design View.

  3. Click the row selector for the current primary key. If the primary key consists of multiple fields, hold down CTRL, and then click the row selector for each field.

  4. On the Design tab, in the Tools group, click Primary Key.

    Tools group on the Design tab

    The key indicator is removed from the field or fields that you previously specified as the primary key.

When you save a new table without setting a primary key, Access prompts you to create a new field for the primary key. If you click Yes, Access creates an ID field that uses the AutoNumber data type to provide a unique value for each record. If your table already includes an AutoNumber field, Access uses it as the primary key. If you click No, Access does not add a field, and no primary key is set.

Top of Page

Adding fields

To store a new piece of data about something for which you already have an Access table, consider adding a field to the table. For example, suppose you have a table that stores the last name, first name, email address, telephone number, and mailing address of each of your customers. If you want to start tracking each customer’s preferred means of communication, you add a field to store that data.

You store each piece of data that you want to track in a field. For example, in a contacts table you create fields for Last Name, First Name, Telephone Number, and Address. In a products table you create fields for Product Name, Product ID, and Price.

Every field has certain essential characteristics, such as a name that uniquely identifies the field within a table, a data type that defines the nature of the data, the operations that can be performed on the data, and how much storage space to set aside for each value.

Before you create fields, try to separate data into its smallest useful parts. It is much easier to combine data later than it is to pull it apart. For example, instead of a Full Name field, consider creating separate fields for Last Name and First Name. Then, you can easily search or sort by First Name, Last Name, or both. If you plan to report, sort, search, or calculate on an item of data, put that item in a field by itself.

After you create a field, you can also set field properties to control its appearance and behavior. For example, the Format property defines how the data appears in a datasheet or form that contains that field.

Top of Page

Add a field by entering data

When you create a new table or open an existing table in Datasheet view, you can add a field to the table by entering data in the Add New Field column of the datasheet (1). Access automatically assigns a data type for the field, based on the value that you enter. If no other data type is implied by your input, Access sets the data type to Text but you can change the data type.

Datasheet in Access with Add New Field column

To enter data in the Add New Field column:

  1. Create or open a table in Datasheet view by right-clicking the table that you want in the Navigation Pane and then clicking Datasheet view from the shortcut menu.

  2. In the Add New Field column, enter the name of the field that you want to create.

    Use a descriptive name so that the field will be easier to identify.

  3. Enter data in the new field.

Top of Page

Add a field by using a field template

Sometimes it is easier to choose from a predefined list of fields that fit your needs than to manually create a field. You can use the More Fields list to choose from a list of field templates. A field template is a predefined set of characteristics and properties that describes a field. The field template definition includes a field name, a data type, a setting for the field's Format property, and other field properties.

  1. On the Home tab, in the Views group, click View, and then click Datasheet View.

  2. On the Fields tab, in the Add & Delete group, click More Fields.

    Screesnhot of Add & Delete group on the Fields ribbbon tab.

  3. Select a field in the More Fields list to insert the new column. Access places the field to the right of the column where your cursor is currently located. If you choose one of the field options under the Quick Start heading, such as Address, Access creates multiple fields in your table to contain the various parts of an address.

Top of Page

Setting field properties

After you create a field, you can set field properties to control its appearance and behavior.

For example, by setting field properties, you can:

  • Control the appearance of data in a field

  • Help prevent incorrect data entry in a field

  • Specify default values for a field

  • Help speed up searching and sorting on a field

You can set some of the available field properties while you work in Datasheet view. To have access to and set the complete list of field properties; however, you must use Design view.

The properties that you can set, depend on the field’s data type.

Top of Page

Set field properties in Datasheet view

You can rename a field, change its data type, change its Format property, and change some of a field's other properties while you work in Datasheet view.

  1. In the Navigation Pane, right-click the table that you want to open.

  2. On the shortcut menu, click Datasheet view.

Top of Page

Rename a field

When you add a field by entering data in Datasheet view, Access automatically assigns a generic name to the field. Access assigns the name Field1 to the first new field, Field2 to the second new field, and so on. By default, a field's name is used as its label wherever the field is displayed, such as a column heading on a datasheet. Renaming fields so that they have more descriptive names helps make them easier to use when you view or edit records.

  1. Right-click the heading of the field that you want to rename (for example, Field1).

  2. On the shortcut menu, click Rename Field.

  3. Enter the new name in the field heading.

    Field names can consist of up to 64 characters (letters or numbers), including spaces.

Top of Page

Change a field's data type

When you create a field by entering data in Datasheet view, Access examines that data to determine the appropriate data type for the field. For example, if you enter 1/1/2017, Access recognizes that data as a date and sets the data type for the field to Date/Time. If Access can't definitively determine the data type, the data type is set to Text by default (Short Text if you're using Access 2016).

The data type of the field determines which other field properties you can set. For example, you can set only the Append Only property for a field that has the Hyperlink data type or the Memo data type (Long Text if you're using Access 2016).

There may be cases where you want to manually change a field's data type. For example, suppose you have room numbers that resemble dates, such as 10/2017. If you enter 10/2017 into a new field in Datasheet view, the automatic data type detection feature selects the Date/Time data type for the field. Because room numbers are labels, and not dates, they should use the Text data type. Use the following procedure to change a field's data type.

  1. On the Ribbon, click the Fields tab.

  2. In the Data Type list, in the Formatting group, select the data type that you want.

    Access Ribbon Image of Data Type and Formatting group

    What data types are available?

    See Data types for Access desktop databases for a complete list of available data types in Access databases.

    Tips on data types

    • The maximum size of an Access database file is 2 gigabytes.

    • To optimize performance, you should use the most appropriate Field Size when you create a Text or Number field. For example, if you expect to store postal codes of a predictable length, specify that length as the field size. You can specify the field size by setting a value in the Field Size property box. For more information, see the section, Set other field properties.

    • For phone numbers, part numbers, and other numbers that you don't intend to use for mathematical calculations, you should select the Text data type instead of the Number data type. A numeric value that is stored as text can be sorted and filtered more logically.

Top of Page

Change a field's format

In addition to determining the data type of a new field, Access may also set the Format property for the field, depending on what you enter. For example, if you enter 10:50 a.m., Access sets the data type to Date/Time and the Format property to Medium Time. To manually change a field's Format property, do the following:

  1. On the Ribbon, click the Fields tab. 

  2. In the Format list, in the Formatting group, enter the format you want. 

    Note: The Format list may be unavailable for some fields (for example, Text), depending on the data type of the field.

Top of Page

Set other field properties

  1. In Datasheet view, click the field for which you want to set the property.

  2. On the Fields tab, in the Properties, Formatting, or Field Validation groups, select the properties that you want.

Top of Page

Set field properties in Design view

You can set any field property while you work with a table in Design view. In Design view, you set a field's data type in the table design grid, and you set other properties in the Field Properties pane.

  1. In the Navigation Pane, right-click the table.

  2. On the shortcut menu, click Design view.

Top of Page

Change a field's data type

You can change various aspects of a field after you create it.

Warning: You can also change these aspects of a field that you did not just create. However, if data already exists in the field some actions will not be available, or may cause data loss.

  1. In the table design grid, locate the field for which you want to set the data type.

  2. In the Data Type column, choose a data type from the list.

    What data types are available?

    See Data types for Access desktop databases for a complete list of available data types in Access databases.

    Tips on data types

    • The maximum size of an Access database file is 2 gigabytes.

    • For phone numbers, part numbers, and other numbers that you don't intend to use for mathematical calculations, you should select the Text data type instead of the Number data type. A numeric value that is stored as text can be sorted and filtered more logically, but cannot be easily used in calculations.

    • For the Text and Number data types, you can specify the field size or data type more precisely by setting a value in the Field Size property box.

Top of Page

Set other field properties

Note: Not all formats are available for all data types. Set the data type first, and then, if needed, set the format.

  1. In the table design grid, select the field for which you want to set properties. Access displays the properties for this field in the Field Properties pane.

    The data type of the field determines the properties that you can set.

  2. In the Field Properties pane, enter the settings that you want for each property, or press F6 and then use the arrow keys to select a property.

    What field properties are available?

    See Introduction to data types and field properties for a complete list of field properties available for each data type in Access databases.

    Note: Not all properties are available for every field. A field's data type determines which properties it has.

  3. To provide more space for entering or editing a property setting in the property box, press SHIFT+F2 to display the Zoom box.

    Tip: If you are entering an input mask or validation expression and would like help in building it, click Builder button next to the property box to display the appropriate builder.

  4. To save your changes, press CTRL+S.

Top of Page

Move a field

To move a field, drag it to the position that you want. To select multiple contiguous fields to move, click the first field, hold down the SHIFT key, and then click the last field. You can then drag the selected group of fields to a new position.

Dragging a field changes its position on the Datasheet, but does not change the order of the fields in the table design. If you programmatically access the fields, the original order applies. For example, if you drag a field to a new position on the Datasheet, and then create a form from the table by using the Form button, the field will be in its original position.

Top of Page

See Also

Add a calculated field to a table

Add a field to a form or report

How to Create Table in MS Access- Microsoft Access 2016 Tutorial [Hindi/Urdu]


You can use tables from a Microsoft Access database in ArcMap through an OLE DB connection. OLE DB is a standard for sharing data between applications, enabling you to view the Access database in ArcMap. To maintain data integrity, you should only modify an Access database in Access.

Make sure your field names are properly formatted. You should follow these general best practices for field naming, particularly if you want to join an Access table to another table in ArcMap:

  • Field names must start with a letter.
  • Field names must contain only letters, numbers, and underscores.
  • Field names must not exceed 64 characters.
  • Field names must not contain Microsoft Access reserved words. Some examples include date, day, month, table, text, user, when, where, year, and zone. For a list of reserved words, see Microsoft support article (KB 286335).

If you import a table into a database in Access, follow these guidelines when using the wizard:

  • The fields do not need to be indexed.
  • If the table does not have a field with unique values, allow Access to add a primary key.
  • Name the table with only letters, numbers, or underscores and begin it with a letter.

Related topics


You will also like:

Microsoft Access

Database manager that is part of the Microsoft Office package

Microsoft Access is a database management system (DBMS) from Microsoft that combines the relationalMicrosoft Jet Database Engine with a graphical user interface and software-development tools. It is a member of the Microsoft 365 suite of applications, included in the Professional and higher editions or sold separately.

Microsoft Access stores data in its own format based on the Access Jet Database Engine. It can also import or link directly to data stored in other applications and databases.[2]

Software developers, data architects and power users can use Microsoft Access to develop application software. Like other Microsoft Office applications, Access is supported by Visual Basic for Applications (VBA), an object-based programming language that can reference a variety of objects including the legacy DAO (Data Access Objects), ActiveX Data Objects, and many other ActiveX components. Visual objects used in forms and reports expose their methods and properties in the VBA programming environment, and VBA code modules may declare and call Windows operating system operations.


Prior to the introduction of Access, Borland (with Paradox and dBase) and Fox (with FoxPro) dominated the desktop database market. Microsoft Access was the first mass-market database program for Windows. With Microsoft's purchase of FoxPro in 1992 and the incorporation of Fox's Rushmore query optimization routines into Access, Microsoft Access quickly became the dominant database for Windows—effectively eliminating the competition which failed to transition from the MS-DOS world.[3]

Project Omega[edit]

Microsoft's first attempt to sell a relational database product was during the mid 1980s, when Microsoft obtained the license to sell R:Base.[4] In the late 1980s Microsoft developed its own solution codenamed Omega.[5] It was confirmed in 1988 that a database product for Windows and OS/2 was in development.[6][7] It was going to include the "EB" Embedded Basic language,[5] which was going to be the language for writing macros in all Microsoft applications,[8] but the unification 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.[9] 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.[10] It was scheduled to be released in the 1st quarter of 1990,[11] but in 1989 the development of the product was reset[4][12] and it was rescheduled to be delivered no sooner than in January 1991.[13] Parts of the project were later used for other Microsoft projects: Cirrus (codename for Access) and Thunder (codename for Visual Basic, where the Embedded Basic engine was used).[4][5] After Access's premiere, the Omega project was demonstrated in 1992 to several journalists and included features that were not available in Access.[14]

Project Cirrus[edit]

After the Omega project was scrapped, some of its developers were assigned to the Cirrus project (most were assigned to the team which created Visual Basic).[4] Its goal was to create a competitor for applications like Paradox or dBase that would work on Windows.[15] After Microsoft acquired FoxPro, there were rumors that the Microsoft project might get replaced with it,[16] but the company decided to develop them in parallel. It was assumed that the project would make use of Extensible Storage Engine (Jet Blue)[17] but, in the end, only support for Microsoft Jet Database Engine (Jet Red) was provided. The project used some of the code from both the Omega project and a pre-release version of Visual Basic.[5] In July 1992, betas of Cirrus shipped to developers[18] and the name Access became the official name of the product.[19] "Access" was originally used for an older terminal emulation program from Microsoft. Years after the program was abandoned, they decided to reuse the name here.[20]


1992: Microsoft released Access version 1.0 on November 13, 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.

1994: Microsoft specified 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.

As a part of the Microsoft Office 4.3 Professional with Book Shelf, Microsoft Access 2.0 was included with first sample databases "NorthWind Trader" which covered every possible aspect of programming your own database. The Northwind Traders sample first introduced the Main Switchboard features new to Access 2.0 for 1994. The photo of Andrew Fuller, record #2 of that sample database was the individual that presented and worked with Microsoft to provide such an outstanding example database.

With Office 95, Microsoft Access 7.0 (a.k.a. "Access 95") became part of the Microsoft Office 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 Office. 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), Access 2010 (version 14.0), and Access 2013 (version 15.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.[21] While Microsoft fixed this problem for Jet 3.5/Access 97 post-release, it never fixed 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, and 2007. The most significant transition was from the Access 97 to the Access 2000 format; which is not backward compatible with earlier versions of Access. As of 2011[update] 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.

Microsoft Access 2000 increased the maximum database size to 2GB from 1GB in Access 97.

Microsoft Access 2007 introduced a new database format: ACCDB. It supports links to SharePoint lists and complex data types such as multivalue and attachment fields. These new field types are essentially recordsets in fields and allow the storage of multiple values or files in one field. Microsoft Access 2007 also introduced File Attachment field, which stored data more efficiently than the OLE (Object Linking and Embedding) field.

Microsoft Access 2010 introduced a new version of the ACCDB format supported hosting Access Web services on a SharePoint 2010 server. For the first time, this allowed Access applications to be run without having to install Access on their PC and was the first support of Mac users. Any user on the SharePoint site with sufficient rights could use the Access Web service. A copy of Access was still required for the developer to create the Access Web service, and the desktop version of Access remained part of Access 2010. The Access Web services were not the same as the desktop applications. Automation was only through the macro language (not VBA) which Access automatically converted to JavaScript. The data was no longer in an Access database but SharePoint lists. An Access desktop database could link to the SharePoint data, so hybrid applications were possible so that SharePoint users needing basic views and edits could be supported while the more sophisticated, traditional applications could remain in the desktop Access database.

Microsoft Access 2013 offers traditional Access desktop applications plus a significantly updated SharePoint 2013 web service.[22] 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 offers true relational database design with referential integrity, scalability, extensibility and performance one would expect from SQL Server.[23] The database solutions that can be created on SharePoint 2013 offer a modern user interface designed to display multiple levels of relationships that can be viewed and edited, along with resizing for different 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[clarification needed] (ADPs), pivot tables, pivot charts, Access data collections, source code control, replication, and other legacy features.[24] Access desktop database maximum size remained 2GB (as it has been since the 2000 version).


In addition to using its own database storage file, Microsoft Access also may be used as the 'front-end' of a program while other products act as the 'back-end' tables, such as Microsoft SQL Server and non-Microsoft products such as Oracle and Sybase. Multiple backend sources can be used by a Microsoft Access Jet Database (ACCDB and MDB formats). Similarly, some applications such as Visual Basic, ASP.NET, or Visual Studio .NET will use the Microsoft Access database format for its tables and queries. Microsoft Access may also be part of a more complex solution, where it may be integrated with other technologies such as Microsoft Excel, Microsoft Outlook, Microsoft Word, Microsoft PowerPoint and ActiveX controls.

Access tables support a variety of standard field types, indices, and referential integrity including cascadingupdates and deletes. Access also includes a query interface, forms to display and enter data, and reports for printing. The underlying Jet database, which contains these objects, is multi-user and handles record-locking.

Repetitive tasks can be automated through macros with point-and-click options. It is also easy to place a database on a network and have multiple users share and update data without overwriting each other's work. Data is locked at the record level which is significantly different from Excel which locks the entire spreadsheet.

There are template databases within the program and for download from Microsoft's website. These options are available upon starting Access and allow users to enhance a database with predefined tables, queries, forms, reports, and macros. Database templates support VBA code but Microsoft's templates do not include VBA code.

Programmers can create solutions using VBA, which is similar to Visual Basic 6.0 (VB6) and used throughout the Microsoft Office programs such as Excel, Word, Outlook and PowerPoint. Most VB6 code, including the use of Windows API calls, can be used in VBA. Power users and developers can extend basic end-user solutions to a professional solution with advanced automation, data validation, error trapping, and multi-user support.

The number of simultaneous users that can be supported depends on the amount of data, the tasks being performed, level of use, and application design. Generally accepted limits are solutions with 1 GB or less of data (Access supports up to 2 GB) and it performs quite well with 100 or fewer simultaneous connections (255 concurrent users are supported). This capability is often a good fit for department solutions. If using an Access database solution in a multi-user scenario, the application should be "split". This means that the tables are in one file called the back end (typically stored on a shared network folder) and the application components (forms, reports, queries, code, macros, linked tables) are in another file called the front end. The linked tables in the front end point to the back end file. Each user of the Access application would then receive his or her own copy of the front end file.

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.

Microsoft Access's 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 Data Access Pages created publishable web pages. Data Access Pages are no longer supported. The Microsoft Jet Database Engine, core to Access, can be accessed through technologies such as ODBC or OLE DB. The data (i.e., tables and queries) can be accessed by web-based applications developed in ASP.NET, PHP, or Java. With the use of Microsoft's Terminal Services and Remote Desktop Application in Windows Server 2008 R2, organizations can host Access applications so they can be run over the web.[25] This technique does not scale the way a web application would but is appropriate for a limited number of users depending on the configuration of the host.

Access 2010 allows databases to be published to SharePoint 2010 web sites running Access Services. These web-based forms and reports run in any modern web browser. The resulting web forms and reports, when accessed via a web browser, don't require any add-ins or extensions (e.g. ActiveX, Silverlight).

Access 2013 can create web applications directly in SharePoint 2013 sites running Access Services. Access 2013 web solutions store its data in an underlying SQL Server database which is much more scalable and robust than the Access 2010 version which used SharePoint lists to store its data.

Access Services in SharePoint has since been retired.[26]

A compiled version of an Access database (File extensions: .MDE /ACCDE or .ADE; ACCDE only works with Access 2007 or later) can be created to prevent user from accessing the design surfaces to modify module code, forms, and reports. An MDE or ADE file is a Microsoft Access database file with all modules compiled and all editable source code removed. Both the .MDE and .ADE versions of an Access database are used when end-user modifications are not allowed or when the application's source code should be kept confidential.

Microsoft also offers developer extensions for download to help distribute Access 2007 applications, create database templates, and integrate source code control with Microsoft Visual SourceSafe.


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.

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 and Oracle. It also has the ability to 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 heterogeneousjoins between data sets stored across different platforms. Access is often used by people downloading data from enterprise level databases for manipulation, analysis, and reporting locally.

There is also the Jet Database format (MDB or ACCDB in Access 2007) which can contain the application and data in one file. This makes it very convenient to distribute the entire application to another user, who can run it in disconnected environments.

One of the benefits of Access from a programmer's 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 offers object-oriented possibilities. VBA can also be included in queries.

Microsoft Access offers parameterized queries. These queries and Access tables can be referenced from other programs like VB6 and .NET through DAO or ADO. From Microsoft Access, VBA can reference parameterized stored procedures via ADO.

The desktop editions of Microsoft SQL Server can be used with Access as an alternative to the Jet Database Engine. This support started with MSDE (Microsoft SQL Server Desktop Engine), a scaled down version of Microsoft SQL Server 2000, and continues with the SQL Server Express versions of SQL Server 2005 and 2008.

Microsoft Access is a file server-based database. Unlike client–serverrelational 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 Client-server 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 specifically for web based applications in Access 2010. Integration with Microsoft SharePoint 2010 is also highly improved.

The 2013 edition of Microsoft Access introduced a mostly flat design and the ability to install apps from the Office Store, but it did not introduce new features. The theme was partially updated again for 2016, but no dark theme was created for Access.

Access Services and Web database[edit]

See also: Web form

ASP.NETweb forms can query a Microsoft Access database, retrieve records and display them on the browser.[27]

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.[28]

Access 2013 offers 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.[29] This offers 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.[23]

Import or link sources[edit]

Microsoft Access can also import or link directly to data stored in other applications and databases.[2] Microsoft Office Access 2007 and newer can import from or link to:

Microsoft Access Runtime[edit]

Microsoft offers free runtime versions of Microsoft Access which allow users to run an Access desktop application without needing to purchase or install a retail version of Microsoft Access. This actually allows Access developers to create databases that can be freely distributed to an unlimited number of end-users. These runtime versions of Access 2007 and later can be downloaded for free from Microsoft.[32] The runtime versions for Access 2003 and earlier were part of the Office Developer Extensions/Toolkit and required a separate purchase.

The runtime version allows users to view, edit and delete data, along with running queries, forms, reports, macros and VBA module code. The runtime version does not allow users to change the design of Microsoft Access tables, queries, forms, reports, macros or module 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. During development one can simulate the runtime environment from the fully functional version by using the command line option.[33]


Access stores all database tables, queries, forms, reports, macros, and modules in the Access Jet database as a single file.

For query development, Access offers a "Query Designer", a graphical user interface that allows users to build queries without knowledge of structured query language. In the Query Designer, users can "show" the datasources of the query (which can be tables or queries) and select the fields they want returned by clicking and dragging them into the grid. One can set up joins by clicking and dragging fields in tables to fields in other tables. Access allows users to view and manipulate the SQL code if desired. Any Access table, including linked tables from different data sources, can be used in a query.

Access also supports the creation of "pass-through queries". These snippets of SQL code can address external data sources through the use of ODBC connections on the local machine. This enables users to interact with data stored outside the Access program without using linked tables or Jet.[34] Users construct the pass-through queries using the SQL syntax supported by the external data source.

When 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 off.

Non-programmers can use the macro feature to automate simple tasks through a series of drop-down selections. Macros allow users to easily chain commands together such as running queries, importing or exporting data, opening and closing forms, previewing and printing 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 object's 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 significant 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 Office 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 efficient and maintainable finished product with good error handling, most professional Access applications are developed using the VBA programming language rather than macros, except where web deployment is a business requirement.

To manipulate data in tables and queries in VBA or macros, Microsoft provides two database access libraries of COM components:

  1. Data Access Objects (DAO) (32-bit only), which is included in Access and Windows and evolved to ACE in Microsoft Access 2007 for the ACCDE database format
  2. ActiveX Data Objects ActiveX Data Objects (ADO) (both 32-bit and 64-bit versions)

As well as DAO and ADO, developers can also use OLE DB and ODBC for developing native C/C++ programs for Access.[35] For ADPs and the direct manipulation of SQL Server data, ADO is required. DAO is most appropriate for managing data in Access/Jet databases, and the only way to manipulate the complex field types in ACCDB tables.

In the database container or navigation pane in Access 2007 and later versions, the system automatically categorizes 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.[36][37] It is particularly helpful in VBA where references to object names may not indicate its data type (e.g. tbl for tables, qry for queries).

Developers deploy Microsoft Access most often for individual and workgroup projects (the Access 97 speed characterization was done for 32 users).[38] Since Access 97, and with Access 2003 and 2007, Microsoft Access and hardware have evolved significantly. Databases under 1 GB in size (which can now fit entirely in RAM) and 200 simultaneous users are well within the capabilities of Microsoft Access.[39] Of course, performance depends on the database design and tasks. Disk-intensive work such as complex searching and querying take the most time.

As data from a Microsoft Access database can be cached in RAM, processing speed may substantially improve when there is only a single user or if the data is not changing. In the past, the effect of packet latency on the record-locking system caused Access databases to run slowly on a virtual private network (VPN) or a wide area network (WAN) against a Jet database. As of 2010,[update] broadband connections have mitigated this issue. Performance can also be enhanced if a continuous connection is maintained to the back-end database throughout the session rather than opening and closing it for each table access.[citation needed]

In July 2011, Microsoft acknowledged an intermittent query performance problem with all versions of Access and Windows 7 and Windows Server 2008 R2 due to the nature of resource management being vastly different in newer operating systems.[40] This issue severely affects query performance on both Access 2003 and earlier with the Jet Database Engine code, as well as Access 2007 and later with the Access Database Engine (ACE).[40] Microsoft has issued hotfixes KB2553029 for Access 2007 and KB2553116 for Access 2010, but will not fix the issue with Jet 4.0 as it is out of mainstream support.[40]

In earlier versions of Microsoft Access, the ability to distribute applications required the purchase of the Developer Toolkit; in Access 2007, 2010 and Access 2013 the "Runtime Only" version is offered as a free download,[41] making the distribution of royalty-free applications possible on Windows XP, Vista, 7 and Windows 8.x.[42]

Split database architecture[edit]

Microsoft Access applications can adopt a split-database architecture. The single database can be divided into a separate "back-end" file that contains the data tables (shared on a file server) and a "front-end" (containing the application's objects such as queries, forms, reports, macros, and modules). The "front-end" Access application is distributed to each user's desktop and linked to the shared database. Using this approach, each user has a copy of Microsoft Access (or the runtime version) installed on their machine along with their application database. This reduces network traffic since the application is not retrieved for each use. The "front-end" database can still contain local tables for storing a user's 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 has two built-in utilities, Database Splitter[43] and Linked Table Manager, to facilitate this architecture.

Linked tables in Access use absolute paths rather than relative paths, so the development environment either has to have the same path as the production environment or a "dynamic-linker" routine can be written in VBA.

For very large Access databases, this may have performance issues and a SQL backend should be considered in these circumstances. This is less of an issue if the entire database can fit in the PC's RAM since Access caches data and indexes.

Migration to SQL Server[edit]

Main article: Upsizing (database)

To scale Access applications to enterprise or web solutions, one possible technique involves migrating to Microsoft SQL Server or equivalent server database. A client–server design significantly reduces maintenance and increases security, availability, stability, and transaction logging.

Access 2000 through Access 2010 included a feature called the Upsizing Wizard that allowed users to upgrade their databases to Microsoft SQL Server, an ODBC client–server database. This feature was removed from Access 2013. An additional solution, the SQL Server Migration Assistant for Access (SSMA), continues to be available for free download from Microsoft.[44]

A variety of upgrading options are available.[45] After migrating the data and queries to SQL Server, the Access 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 the Yes/No (True/False) data type: empty, no/false (zero) and yes/true (-1). The corresponding SQL Server data type is binary, with only two states, permissible values, zero and 1. Regardless, SQL Server is still the easiest migration. Retrieving data from linked tables is optimized to just the records needed, but this scenario may operate less efficiently than what would otherwise be optimal for SQL Server. For example, in instances where multi-table joins still require copying the whole table across the network.

In previous versions of Access, including Access 2010, databases can also be converted to Access Data Projects (ADP) which are tied directly to one SQL Server database. This feature was removed from Access 2013. ADP's support the ability to directly create and modify SQL Server objects such as tables, views, stored procedures, and SQL Server constraints. The views and stored procedures can significantly reduce the network traffic for multi-table joins. SQL Server supports temporary tables and links to other data sources beyond the single SQL Server database.

Finally, some Access databases are completely replaced by another technology such as ASP.NET or Java once the data is converted. However any migration may dictate major effort since the Access SQL language is a more powerful superset of standard SQL. Further, Access application procedures, whether VBA and macros, are written at a relatively higher level versus the currently available alternatives that are both robust and comprehensive. Note that the Access macro language, allowing an even higher level of abstraction than VBA, was significantly enhanced in Access 2010 and again in Access 2013.

In many cases, developers build direct web-to-data interfaces using ASP.NET, while keeping major business automation processes, administrative and reporting functions that don't need to be distributed to everyone in Access for information workers to maintain.

While all Access data can migrate to SQL Server directly, some queries cannot migrate successfully. In some situations, you may need to translate VBA functions and user defined functions into T–SQL or .NET functions / procedures. Crosstab queries can be migrated to SQL Server using the PIVOT command.


Microsoft Access applications can be made secure by various methods, the most basic being password access control; this is a relatively weak form of protection.

A higher level of protection is the use of workgroup security requiring a user name and password. Users and groups can be specified 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 file 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 offers significantly advanced encryption from previous versions.[46]

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 file. 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 file. Some tools are available for unlocking and "decompiling", although certain elements including original VBA comments and formatting are normally irretrievable.

File extensions[edit]

Microsoft Access saves information under the following file formats:

File format Extension
Access Blank Project Template.adn
Access Database (2007 and later).accdb
Access Database Runtime (2007 and later).accdr
Access Database Template (2007 and later).accdt
Access Add-In (2007 and later).accda
Access Workgroup, database for user-level security..mdw
Protected Access Database, with compiled VBA and macros (2007 and later).accde
Windows Shortcut: Access Macro.mam
Windows Shortcut: Access Query.maq
Windows Shortcut: Access Report.mar
Windows Shortcut: Access Table.mat
Windows Shortcut: Access Form.maf
Access lock files (associated with .accdb).laccdb
File format Extension
Protected Access Data Project (not supported in 2013).ade
Access Data Project (not supported in 2013).adp
Access Database (2003 and earlier).mdb
Access Database (Pocket Access for Windows CE).cdb
Access Database, used for addins (Access 2, 95, 97),
previously used for workgroups (Access 2)
Access Blank Database Template (2003 and earlier).mdn
Access (SQL Server) detached database (2000).mdf
Protected Access Database, with compiled VBA and macros (2003 and earlier).mde
Access lock files (associated with .mdb).ldb


Release Date[47]Jet versionSupported OSOffice suite version
Access 1.0
Windows 3.0[48]
Access 1.1
Windows 3.1x[48]
Access 2.0
Windows 3.1x[48]Office 4.3 Pro
Access for Windows 95
August 24, 1995
Windows 95[48]Office 95 Professional
Access 97
January 16, 1997
Windows 95, Windows NT 3.51 SP5, Windows NT 4.0 SP2[49]Office 97 Professional and Developer
Access 2000
June 7, 19994.0 SP1 Windows 95, Windows NT 4.0, Windows 98, Windows 2000[50]Office 2000 Professional, Premium and Developer
Access 2002
May 31, 2001 Windows NT 4.0 SP6, Windows 98, Windows 2000, Windows Me[51]Office XP Professional and Developer
Access 2003
November 27, 2003 Windows 2000 SP3 or later, Windows XP, Windows Vista, Windows 7[52]Office 2003 Professional and Professional Enterprise
Access 2007
January 27, 2007
Windows XP SP2, Windows Server 2003 SP1, or newer operating system[53]Office 2007 Professional, Professional Plus, Ultimate and Enterprise
Access 2010
July 15, 2010
Windows XP SP3, Windows Server 2003 SP2, Windows Server 2003 R2, Windows Vista SP1, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows Server 2012, Windows 8[54]Office 2010 Professional, Professional Academic and Professional Plus
Access 2013
January 29, 2013
Windows 7, Windows Server 2008 R2, Windows Server 2012, Windows 8, Windows 10[55]Office 2013 Professional and Professional Plus
Access 2016
16.0September 22, 201516 Windows 7, Windows 8, Windows 8.1, Windows 10[56]Office 2016 Professional and Professional Plus
Access 2019
September 24, 2018 Windows 10[57]Office 2019 Professional and Professional Plus

There are no Access versions between 2.0 and 7.0 because the Office 95 version was launched with Word 7. All of the Office 95 products have OLE 2 capabilities, and Access 7 shows that it was compatible with Word 7.

Version number 13 was skipped.

See also[edit]


  1. ^Warren, Tom. "Microsoft Office 2021 will launch on October 5th". The Verge. Retrieved October 5, 2021.
  2. ^ ab"Introduction to importing and exporting data". Microsoft. Retrieved October 15, 2010.
  3. ^"Microsoft Access History". Retrieved March 13, 2016.
  4. ^ abcdGoodhew, Tony (1996). "Jet Engine: History". Retrieved January 2, 2011.
  5. ^ abcdFerguson, Scott. "The Birth of Visual Basic".
  6. ^Brownstein, Mark; Johnston, Stuart J. (November 14, 1988). "Microsoft Works on SAA Database". InfoWorld. p. 5.
  7. ^Brownstein, Mark (February 13, 1989). "Microsoft Puts Finishing Touches on Windows Applications". InfoWorld. p. 5.
  8. ^Flynn, Laurie (May 8, 1989). "Microsoft Applications to Share Macro Language". InfoWorld. p. 1.
  9. ^Flynn, Laurie (August 21, 1989). "Microsoft Waits on SQL Front Ends". InfoWorld. p. 109.
  10. ^Cringely, Robert X. (September 4, 1989). "Gates Claims That 80286 Systems Are No Longer His Babies". InfoWorld. p. 82.
  11. ^Cringely, Robert X. (July 31, 1989). "No Way, the PC Industry Will Always Be Dominated By Doritos". InfoWorld. p. 86.
  12. ^Cringely, Robert X. (October 16, 1989). "Lotus Exec Tells of Ordeal: "Aliens Force Me to Use MS Windows"". InfoWorld. p. 106.
  13. ^Cringely, Robert X. (November 20, 1989). "Elvis, Now a Vegas Parking Lot Attendant, Further Delays Intel 486". InfoWorld. p. 106.
  14. ^Mace, Scott (November 30, 1992). "Microsoft demos its ill-fated Omega". InfoWorld. p. 16.
  15. ^Picarille, Lisa; Mace, Scott (March 30, 1992). "Microsoft's Fox purchase stirs up the XBase market". InfoWorld. p. 1.
  16. ^Cringely, Robert X. (November 4, 1991). "Whatever costume Eckhard wears is likely to scare Silicon Graphics". InfoWorld. p. 118.
  17. ^Mace, Scott (June 29, 1992). "Microsoft creating API to complement ODBC". InfoWorld. p. 1.
  18. ^"Developers get beta version of Microsoft DBMS". InfoWorld. July 13, 1992. p. 3.
  19. ^Johnston, Stuart J. (July 20, 1998). "Cirrus dubbed Access; faster beta released". InfoWorld. p. 1.
  20. ^"Where did the name for Microsoft Access come from?". The Old New Thing. Microsoft. Retrieved March 13, 2016.
  21. ^"Out of memory" error starting Microsoft Access
  22. ^"Changes in Access". Microsoft. Retrieved March 13, 2016.
  23. ^ ab"New in Access for developers". Microsoft. Retrieved March 13, 2016.
  24. ^"Discontinued features and modified functionality in Access 2013". Microsoft. Retrieved March 13, 2016.
  25. ^"Using Terminal Services and RemoteApp to Extend Your Microsoft Access and other Windows Applications Over the Internet". Retrieved March 13, 2016.
  26. ^"Access Services in SharePoint Roadmap". Microsoft. Retrieved May 20, 2019.
  27. ^"Create ASP.NET Web Forms to Use a Microsoft Access Database". Retrieved June 13, 2017.
  28. ^"Creating Web Databases with Access 2010 and Access Services". July 22, 2009. Retrieved April 24, 2013.
  29. ^"Microsoft Access 2013 Web Applications and Examples". Retrieved September 4, 2017.
  30. ^"Back by popular demand—dBASE file support in Access". Office Blogs. Microsoft. September 7, 2016. Retrieved August 20, 2017.
  31. ^ ab"Discontinued features and modified functionality in Access 2010". Microsoft. Retrieved January 17, 2014.
  32. ^"Microsoft Access Runtime Distribution and Free Downloads". Retrieved June 15, 2016.
  33. ^"Simulating the Microsoft Access Runtime during Development". Retrieved June 15, 2016.
  34. ^Sinclair, Russell (2000). From access to SQL server. Apress Series. Apress. p. 39. ISBN . Retrieved July 8, 2010.
  35. ^Aleksandar Jakšić (August 2008). "Developing Access 2007 Solutions with Native C or C++". Microsoft Corporation. Retrieved September 22, 2008.
  36. ^"Naming Conventions". Microsoft. Retrieved March 13, 2016.
  37. ^Naming Conventions for Visual Basic
  38. ^Kevin Collins (Microsoft Jet Program Management), "Microsoft Jet 3.5 Performance Overview and Optimization Techniques", MSDN. Retrieved July 19, 2005.
  39. ^"Microsoft Access Database Scalability: How many users can it support?". FMS Software Development Team Blog. Retrieved March 13, 2016.
  40. ^ abcVery slow Access 2002 query with Windows 7
  41. ^"Microsoft Access Runtime Distribution Programs and Free Downloads". Retrieved March 13, 2016.
  42. ^"Download Microsoft Access 2010 Runtime from Official Microsoft Download Center". Microsoft. Retrieved March 13, 2016.
  43. ^"Microsoft Access Split Database Architecture to Support Multiuser Environments, Improve Performance, and Simplify Maintainability". Retrieved April 24, 2013.
  44. ^"Microsoft SQL Server Migration Assistant 7.10 for Access". Retrieved October 20, 2018.
  45. ^"When and How to Upsize Microsoft Access Databases to SQL Server". Retrieved March 13, 2016.
  46. ^"Security Considerations and Guidance for Access 2007". Microsoft. Retrieved March 13, 2016.
  47. ^"Microsoft Access Life-cycle Information". Retrieved October 23, 2011.
  48. ^ abcd"Microsoft Access Version Releases, Service Packs, Hotfixes, and Updates History". FMS. Retrieved July 20, 2015.
  49. ^"Chapter 5 - System Requirements for MS Office". Office 97 Resource Kit. Microsoft. Retrieved May 2, 2013.
  50. ^"Office 2000 Systems Requirements". Microsoft Office website. Microsoft. Archived from the original on February 2, 2012. Retrieved May 2, 2013.
  51. ^"Office XP System Requirements". Microsoft Office website. Microsoft. Archived from the original on March 4, 2013. Retrieved May 2, 2013.
  52. ^"Office 2003 Licensing and System Requirements". Microsoft Office website. Microsoft. Archived from the original on June 15, 2013. Retrieved May 2, 2013.
  53. ^"Getting started with the 2007 Office system". Microsoft TechNet. Microsoft. April 28, 2009. Retrieved May 2, 2013.
  54. ^"System requirements for Office 2010". Microsoft TechNet. Microsoft. February 19, 2013. Retrieved May 2, 2013.
  55. ^"System requirements for Office 2013". Microsoft TechNet. Microsoft. December 16, 2016. Retrieved August 15, 2017.
  56. ^"Microsoft Access 2016". Microsoft. Microsoft.
  57. ^"Microsoft Access 2019". Microsoft. Microsoft.

External links[edit]


356 357 358 359 360