Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

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 Create in a new databaseCreate in an existing databaseImporting or linking — — Use external data — — Use a SharePoint site — — Use a Web serviceSet a table's propertiesSave a table

Setting a primary key Determine fields to useSet or change a primary keyRemove a primary key

Move a field

Adding fields Add by entering dataAdd by using a field templateSetting field propertiesSet in Datasheet view — — Rename a field — — Change a data type — — Change a format — — Set other propertiesSet properties in Design view — — Change a data type — — Set other properties

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

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 Table 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

    To

    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.

    Orientation

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

    Description

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

    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.

    Filter

    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 Table Design tab, in the Tools group, click Primary Key.

    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 Table Design tab, in the Tools group, click Primary Key.

    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 Table 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/2024, 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 Short Text by default (Text if you're using Access 2016 or earlier versions).

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 Long Text data type (Memo if you're using Access 2016 or earlier versions).

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 Table Fields tab.

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

    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 Table 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 Table 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

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.