ODBC–Call Failed

How to Fix “ODBC–Call Failed” in Microsoft Access

“ODBC–call failed” means Access tried to talk to an outside database, usually SQL Server, through linked tables and the request failed. The message itself is generic. The real cause is in a more detailed error that Access often hides.

Common causes

  • The SQL Server name, database name, or login changed
  • The network connection to the server dropped or timed out
  • An outdated ODBC driver, or a newer driver with different security defaults (ODBC Driver 18 encrypts connections by default, which fails if the server’s certificate isn’t trusted)
  • The user doesn’t have permission on the SQL Server table
  • A linked table has no primary key, so Access treats it as read-only
  • The data being saved breaks a rule on the server, such as a required field or a constraint

How to fix it

  1. Get the real error. Click OK on the first message. Access sometimes shows a second, more specific error. If not, a developer can read the full message from the DAO Errors collection in VBA.
  2. Test the connection. Open a linked table directly. If no table opens, the problem is the connection, not a specific record.
  3. Refresh the links. Go to External Data > Linked Table Manager, select the tables, and refresh them. Update the server name or login if it changed.
  4. Check the ODBC driver installed on the user’s computer (search Windows for “ODBC Data Sources”). Make sure every user has the same driver your connection strings expect.
  5. Check certificate settings if you recently moved to ODBC Driver 18. Your IT team can install a trusted certificate on the server, or the connection string can be adjusted.
  6. Confirm each linked table has a primary key in SQL Server, then relink it.

Still failing?

ODBC errors often come from small differences between how Access and SQL Server handle data. Our Access to SQL Server Migration team can track them down. Book a free diagnostic

Scroll to Top