An Azure relational database service.
Please try to increase connection timeout of at least 30 seconds. In addition, Azure SQL expects cloud-connected applications to use retry logic.
For the linked tables, I would use a DSN or connection string similar to this:
ODBC;
DRIVER=ODBC Driver 18 for SQL Server;
SERVER=tcp:<server_name>.database.windows.net,1433;
DATABASE=<database_name>;
UID=<user_name>;
PWD=<password>;
Encrypt=yes;
TrustServerCertificate=no;
Connection Timeout=30;
ConnectRetryCount=3;
ConnectRetryInterval=10;
APP=MS Access 2021;
The important additions are:
Connection Timeout=30;
ConnectRetryCount=3;
ConnectRetryInterval=10;
Another thing you may consider o try is considering to dd a lightweight “keep-alive” in Access. This is because Access linked tables are not a modern connection-pooled application with robust retry handling. SO consider to add a small hidden form that runs a timer every 3–5 minutes and executes a lightweight query against the Azure SQL database.
Take in consideration that Azure SQL Serverless option goes to sleep after an hour without activity and Serverless is not intended for Production. So if you are using Serverless try to move to vCore or DTU models that are always available, but you can scale them down during non-business hours or low usage periods.