Troubleshooting

SAS and ODBC: Resolving the "Engine cannot be found" Error After a PC Change

Simon 8 vistas

When migrating to a new computer or a new installation, configuring database connections is a critical step. It is common for an ODBC connection, although tested and functional in the Windows administrator, to refuse to execute correctly within SAS©.

A classic case involves the error indicating that the engine cannot be found, often occurring when using PROC SQL via ODBC.

The Symptom

The scenario is as follows: you have just configured a new data source (DSN) for SQL Server on your machine. The connection test in the Windows ODBC administration tool is successful.

However, when you run your usual SAS© code:

Illustration
1PROC SQL ;
2 connect to odbc as MonAlias (datasrc=MonDSN user=&username password=&passwrd);
3 create TABLE work.testtable as
4 select * from connection to MonAlias
5 (Select * from [database]);
6QUIT;
SAS© returns the following error message:

ERROR: The TXEVER engine cannot be found. ERROR: A Connection to the TxEVER DBMS is not currently supported, or is not installed at your site.

Causes and Solutions

If your connection string has not changed, the problem is almost always related to the Windows environment or software architecture. Here are the two essential points to check.

1. Architecture Compatibility (32-bit vs. 64-bit)

This is the most common technical cause. It is imperative that the architecture of your ODBC driver matches that of your SAS© installation.

  • If you are using 64-bit SAS©, you must configure your DSN and have a 64-bit ODBC driver.

  • If you use 32-bit SAS©, you must use the 32-bit driver.

Note: In Windows, there are two different ODBC Data Source Administrators. Make sure you have configured your Data Source Name (DSN) in the administrator version that matches your SAS© version.

2. System Restart (The "Reboot" Factor)

Sometimes, the solution is much simpler. After configuring new environment variables or new system ODBC sources on a freshly installed machine, these changes may not be immediately recognized by all services, or a temporary conflict might block access to the driver.

In several documented cases, a simple full reboot of the computer is enough to "unblock" the situation. If a standard restart doesn't work, a "Cold Reboot" (complete shutdown, waiting a few seconds, then restarting) may be necessary to properly reset the connection services.

When facing an "Engine cannot be found" error on a new machine:

  1. Verify that you are not trying to access a 32-bit DSN from a 64-bit SAS© (or vice versa).

  2. If the architecture is correct, restart your computer. This is often the missing step after an initial ODBC configuration.