How to Make a Microsoft Access Form Record Source Updatable
Question details
The user needs to know how to modify an Access form's record source so that the underlying data becomes updatable and can be edited directly within the form.

- Product
- Microsoft Access
- Device & OS
- not provided
- Scenario
- A user is trying to edit records via an Access form, but the fields are locked or read-only because the underlying multi-table query does not allow updates.
- Observed behavior
- The Access form fields become completely read-only and prevent any data entry or modifications when using a non-updatable, multi-table query as the record source.
Before attempting to modify your form's queries, open the record source query directly in Datasheet View to verify whether the underlying query itself allows data entry.
Convert Comma Joins to Explicit INNER JOINs and Include Primary Keys
Updating your SQL syntax to explicit JOINs and ensuring all tables have defined primary keys will often resolve read-only query issues.
Microsoft Access cannot update a query if it cannot uniquely identify the records being edited. Using implicit joins (listing comma-separated tables in the FROM clause) or failing to include primary keys forces the query into a read-only state.
Open your form in Design View, navigate to the Property Sheet, and click the ellipsis (...) next to the 'Record Source' property under the Data tab.
Ensure that every table included in your query has a Primary Key defined in the core database design.
Drag and drop the Primary Key field of the specific table you intend to update into the query's output grid.
Right-click the query tab and select 'SQL View'. Rewrite your FROM clause to use explicit INNER JOIN syntax. For example, change 'FROM tblScores, tblMatchGame WHERE...' to 'FROM tblScores INNER JOIN tblMatchGame ON tblScores.ID = tblMatchGame.ID'.

Separate Data Using a Main Form and Subform Setup
The most reliable way to handle editable multi-table data in Access without triggering updatability restrictions is to use a main form with subforms.
Manage Your Exported Database Data Easily with WPS Office
While Microsoft Access is used for building relational databases, you frequently need a reliable tool to analyze, share, and present your exported data. WPS Office is the perfect lightweight alternative for handling your daily spreadsheet, document, and presentation needs without an expensive subscription.
- 1. Download and Install: Visit the official WPS website and download the free WPS Office suite for your operating system.
- 2. Open Your Data Exports: Launch WPS Office and open your existing Microsoft Excel or CSV database exports seamlessly.
- 3. Analyze and Report: Use WPS Spreadsheets to filter, pivot, and analyze your tabular data with full compatibility.

Frequently Asked Questions
Why do my Microsoft Access form fields become read-only?
This happens when the form's Record Source is based on a non-updatable query. Common causes include missing primary keys in the joined tables, using implicit comma-separated joins instead of explicit INNER JOINs, or using aggregating features like GROUP BY or DISTINCT in the SQL syntax.
Can I edit data in a query that combines multiple tables?
Yes, but the query must be strictly configured. You must use explicit INNER or OUTER joins, ensure all participating tables have primary keys, and make sure the primary key from the specific table you want to edit is included in the query's select fields.
What is the best alternative to using a multi-table query for an Access form?
The standard and most robust approach is to use a Main Form bound to the primary table and a Subform bound to the related child table. This method completely sidesteps the updatability limitations of complex queries and is natively supported by Access.
How do I check if my query is updatable before designing the form?
Open the query directly in Datasheet View from the Access Navigation Pane. If you can edit a cell or see a blank row at the bottom with an asterisk (*) to add a new record, the query is updatable. Consequently, any form bound to it will also allow updates.




