Core component of SQL Server for storing, processing, and securing data
There is no published SQL Server 2025 known issue or confirmed fix matching this bound-form latency, so the next useful action is a synchronized ODBC Driver Manager and WPR capture that identifies whether the 150–250 ms occurs before, inside, or after the ODBC call.
Your Extended Events result already establishes that SQL Server execution itself is under 1 ms; Microsoft distinguishes that server duration from network latency and application-side processing time.^1^
1. Capture the ODBC call boundary
ODBC Driver Manager tracing records the API calls between Access/ACE, the Driver Manager, and Driver 18, including return timing. On Windows it is enabled from the Tracing tab in ODBC Data Source Administrator.^2^
- Close other applications using ODBC.
- Open ODBC Data Sources (64-bit) under the same Windows account that runs Access.
- Select Tracing and choose a private log-file location.
- Start tracing.
- Perform the smallest reproducible sequence:
- Run the warmed-up
SELECT 1with no affected form open. - Open one affected bound form.
- Run the identical request once.
- Close the form and run it once more.
- Run the warmed-up
- Stop tracing immediately and close Access.
Tracing can expose connection strings, SQL text, and parameter values, so redact secrets and application data before sharing the file. Keep the capture short because tracing itself adds overhead.
In the trace, compare timestamps around calls such as SQLExecute, SQLExecDirect, SQLFetch, SQLGetData, and transaction-related calls:
- Delay before an ODBC call starts: Access/ACE or form processing.
- Long duration inside an execute/fetch call, while XE remains under 1 ms: Driver Manager, Driver 18, transport, or result-processing path.
- Execution returns quickly but subsequent metadata/fetch calls stall: cursor, metadata, or partially consumed bound-form recordsets.
- Repeated calls appear only while the form is open: background Access activity is contending or interleaving with the test.
This is more discriminating than another DAO stopwatch measurement.
2. Capture Access process stacks and waits simultaneously
Use Windows Performance Recorder to determine what the Access thread is doing during each 200 ms interval. WPR records ETW events that Windows Performance Analyzer can inspect.^3^
Run from an elevated terminal:
wpr -start GeneralProfile -filemode
# Reproduce one fast/slow/fast sequence in Access.
wpr -stop AccessSql2025Latency.etl
wpa.exe AccessSql2025Latency.etl
In WPA, isolate MSACCESS.EXE and inspect CPU usage, thread activity, waits, disk I/O, and networking over the slow interval. Microsoft’s performance workflow recommends finding the relevant application thread and examining its top CPU and wait stacks.^4^
Useful distinctions include:
- stacks in Access/ACE before an ODBC API call;
- stacks in the ODBC Driver Manager or Driver 18;
- synchronization waits between Access threads;
- certificate, authentication, DNS, or network-filter activity;
- repeated UI/form timer or recordset refresh work.
3. Add packet timing only if the ODBC call itself is slow
If the Driver Manager trace places the delay inside an ODBC call, capture client and server network traffic over the same short reproduction. Because Access and SQL Server 2025 are local, Microsoft specifically documents using a packet capture with the Npcap driver for same-machine tracing; SQL Network Analyzer can then process the trace.^5^
Compare:
- Time Access enters the ODBC call.
- Time the TDS request is sent.
- Time the final response packet arrives.
- Time the ODBC call returns.
That separates pre-send client delay, transport/server-response delay, and post-response driver processing.
Version and support-case checks
- Record the exact
MSACCESS.EXE, ACE, Driver 18 DLL, Windows, and SQL Server build numbers. - If Driver 18 is older than [IP Address], reproduce on a controlled test machine with that release; it is the documented 18.7 Windows version.^6^
- Supply the minimal database, affected form properties/record sources, VBA timer, ODBC trace, ETL, XE data, and a timestamped fast/slow/fast reproduction to Microsoft Support.
- The published SQL Server 2025 known-issues list does not currently include this Access/ODBC bound-form pattern.^7^
- The documented PBKDF2 issue affects SQL Authentication login cost, especially without pooling. It does not explain repeated delays on the same established session.
FQDN/SPN/Kerberos changes should only be investigated if the capture shows new connections or authentication activity during each delay. A superficially similar Access/ODBC case improved after replacing an IP-based connection with FQDN/port and correcting NTLM fallback, but that case was connection/authentication-related and is not yet a close match for your same-session symptom.^8^
References
- Troubleshoot query performance difference between database application and SSMS
- ODBC diagnostics
- Windows Performance Recorder
- Improve the responsiveness of your Windows app
- Consistent SQL Server network connectivity issues
- Release Notes for Microsoft ODBC Driver for SQL Server on Windows
- SQL Server 2025 Known Issues - SQL Server | Microsoft Learn
- Microsoft Access Linked Table To Sql Server Express via ODBC 17 or ODBC 18 Driver - Microsoft Q&A