ACC2000: Changes in Use of DISTINCTROW in Microsoft Access 2000
This article was previously published under Q207761 Moderate: Requires basic macro, coding, and interoperability skills.
This article applies only to a Microsoft Access database (.mdb). On This PageSUMMARY
Microsoft Access 2000 and Microsoft Jet database engine version 4.0 use
the DISTINCTROW predicate differently than did earlier versions of Microsoft Access. This article discusses the differences in queries that use DISTINCTROW.
MORE INFORMATION
The DISTINCTROW predicate is the SQL equivalent of setting the
UniqueRecords property in a query to Yes. In Microsoft Access 2000, the default setting for the UniqueRecords property in a query is No, which eliminates DISTINCTROW from the query's SQL statement. In Microsoft Access 2.0 and 7.0, the default setting for the UniqueRecords property is Yes, which adds DISTINCTROW to the query's SQL statement.
Changes in the Microsoft Jet database engine included with Microsoft Access 2000 cause the program to handle the SQL reserved word DISTINCTROW differently than it did in versions earlier than Access 97. Three types of queries are affected by the change: update queries, delete queries, and select queries. NOTE: Using DISTINCTROW in a query has no effect unless the query contains two or more joined tables. Update QueriesIf you run an update query that you imported from a Microsoft Access 2.0 or 7.0 database, or if you run an existing update query in a database that you converted in Microsoft Access 2000 from Access 7.0 and earlier versions, you may receive the following error message:
Operation must use an updateable query.
To resolve this error, set the query's UniqueRecords property to No by following these steps:
Delete QueriesWhen a delete query contains more than one table, such as a query that deletes duplicate records from one of the tables, the UniqueRecords property must be set to Yes for all versions of Microsoft Access. However, because the default value for UniqueRecords is No in Access 2000, you must set the value of this property manually when you create a new delete query in Access 2000. To do so, follow these steps:
209183 (http://support.microsoft.com/kb/209183/EN-US/) ACC2000: How to Delete Duplicate Records from a Table
Select QueriesSome select queries that are updateable in Microsoft Access 2.0 or 7.0 may display the following error message when you try to update them in Microsoft Access 2000:
This Recordset is not updateable.
To resolve this error, set the query's UniqueRecords property to No by following these steps:
REFERENCESFor more information about the DISTINCTROW and DISTINCT predicates, click Microsoft Access Help on the Help menu, type all, distinct, distinctrow, top predicates in the Office Assistant or the Answer Wizard, and then click Search to view the topic.
| Article Translations
|

Back to the top
