This article describes the limits of Microsoft Access database files and objects. In most cases, when a database exceeds the following limits, it indicates a design problem. Use the information in this article and carefully examine your database design to identify what needs to be corrected for successful implementation. For example, importing data directly from Microsoft Excel into Access without normalization can result in creating extra fields (columns). For information about designing databases or normalization, see the resources in the Additional information section.
Database specifications
The following list of tables applies to Access databases. Specific version differences, if any, are called out individually.
General
| Attribute | Maximum |
|---|---|
| Total size for an Access database (.accdb or .mdb), including all database objects and data | 2 gigabytes, minus the space needed for system objects. Note: You can work around this size limitation by linking to tables in other Access databases. You can link to tables in multiple database files, each of which can be as large as 2GB. Tip: For more information about reducing the size of your database, see Help prevent and correct database file problems by using Compact and Repair. |
| Total number of objects in a database | 32,768 |
| Number of modules (including forms and reports that have the HasModule property set to True) | 1,000 |
| Number of characters in an object name | 64 |
| Number of characters in a password | 14 |
| Number of characters in a user name or group name | 20 |
| Number of concurrent users | 255 |
Table
| Attribute | Maximum |
|---|---|
| Number of characters in a table name | 64 |
| Number of characters in a field name | 64 |
| Number of fields in a table | 255 |
| Number of open tables | For Microsoft 365 versions of Access, 4,096 including linked tables and the tables opened internally by Access. For non-Microsoft 365 versions of Access, 2,048 including linked tables and the tables opened internally by Access. |
| Number of available connections | 512 for Microsoft 365 versions of Access. 256 for non-Microsoft 365 versions of Access. |
| Table size | 2 gigabyte minus the space needed for the system objects |
| Number of characters in a Short Text field Note: Beginning in Access 2013, Text fields are now called Short Text fields. |
255 |
| Number of characters in a Long Text field Note: Beginning in Access 2013, Memo fields are now called Long Text fields. |
65,535 when entering data through the user interface; 1 gigabyte of character storage when entering data programmatically |
| Size of an OLE Object field | 1 gigabyte |
| Number of indexes in a table | 32 including indexes created internally to maintain table relationships, single-field and composite indexes. |
| Number of fields in an index or primary key | 10 |
| Number of characters in a validation message | 255 |
| Number of characters in a validation rule including punctuations and operators | 2,048 |
| Number of characters in a field or table description | 255 |
| Number of characters in a record (excluding Long Text and OLE Object fields) when the UnicodeCompression property of the fields is set to Yes | 4,000 |
| Number of characters in a field property setting | 255 |
Query
| Attribute | Maximum |
|---|---|
| Number of enforced relationships | 32 per table, minus the number of indexes that are on the table for fields or combinations of fields that aren't involved in relationships* |
| Number of tables in a query | 32* |
| Number of joins in a query | 16* |
| Number of fields in a recordset | 255 |
| Recordset size | 1 gigabyte |
| Sort limit | 255 characters in one or more fields |
| Number of levels of nested queries | 50* |
| Number of characters in a cell in the query design grid | 1,024 |
| Number of characters for a parameter in a parameter query | 255 |
| Number of AND operators in a WHERE or HAVING clause | 99* |
| Number of characters in an SQL statement | Approximately 64,000* |
*Maximum values might be lower if the query includes multivalued lookup fields (.accdb only).
Form and report
| Attribute | Maximum |
|---|---|
| Number of characters in a label | 2,048 |
| Number of characters in a text box | 65,535 |
| Form or report width | In Access for Microsoft 365 Version 2609 (build 16.0.20430.20146) and later, 2,000 in. (5,080 cm). In earlier versions of Access, 22.75 in. (57.79 cm). |
| Form or report section height | In Access for Microsoft 365 Version 2609 (build 16.0.20430.20146) and later, 2,000 in. (5,080 cm). In earlier versions of Access, 22.75 in. (57.79 cm). |
| Height of all sections plus section headers (in Design view) | In Access for Microsoft 365 Version 2609 (build 16.0.20430.20146) and later, 2,100 in. (5,334 cm). In earlier versions of Access, 200 in. (508 cm). |
| Number of levels of nested forms or reports | 7 |
| Number of fields or expressions that you can sort or group on in a report | 10 |
| Number of headers and footers in a report | 1 report header/footer; 1 page header/footer; 10 group headers/footers |
| Number of printed pages in a report | 65,536 |
| Number of controls and sections that you can add over the lifetime of the form or report | 754 |
| Number of characters in an SQL statement that serves as the Recordsource or Rowsource property of a form, report, or control. | 32,750 |
Macro
| Attribute | Maximum |
|---|---|
| Number of actions in a macro | 999 |
| Number of characters in a condition | 255 |
| Number of characters in a comment | 255 |
| Number of characters in an action argument | 255 |