Troubleshooting

SAS und ODBC: Behebung des Fehlers "Engine cannot be found" nach einem PC-Wechsel

Simon 26/05/2018 5 vues

Bei der Migration auf einen neuen Computer oder eine Neuinstallation ist die Konfiguration von Datenbankverbindungen ein entscheidender Schritt. Es kommt häufig vor, dass eine ODBC-Verbindung, obwohl sie im Windows-Administrator getestet wurde und funktionsfähig ist, sich weigert, innerhalb von SAS© korrekt ausgeführt zu werden.

Ein klassischer Fall betrifft den Fehler, der anzeigt, dass die Engine nicht gefunden werden kann, was häufig bei der Verwendung von PROC SQL über ODBC auftritt.

Das Symptom

Das Szenario ist wie folgt: Sie haben gerade eine neue Datenquelle (DSN) für SQL Server auf Ihrem Rechner konfiguriert. Der Verbindungstest im ODBC-Verwaltungstool von Windows ist erfolgreich.

Dennoch, wenn Sie Ihren üblichen SAS©-Code ausführen:

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© gibt die folgende Fehlermeldung zurück:

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.

Ursachen und Lösungen

Wenn sich Ihre Verbindungszeichenfolge nicht geändert hat, liegt das Problem fast immer an der Windows-Umgebung oder der Softwarearchitektur. Hier sind die beiden wichtigsten Punkte, die zu überprüfen sind.

1. Architekturkompatibilität (32-Bit vs. 64-Bit)

Dies ist die häufigste technische Ursache. Es ist zwingend erforderlich, dass die Architektur Ihres ODBC-Treibers mit der Ihrer SAS©-Installation übereinstimmt.

  • Wenn Sie SAS© 64-Bit verwenden, müssen Sie Ihren DSN konfigurieren und einen 64-Bit-ODBC-Treiber haben.

  • Wenn Sie SAS© 32-Bit verwenden, müssen Sie den 32-Bit-Treiber verwenden.

Hinweis: Unter Windows gibt es zwei verschiedene ODBC-Datenquellen-Administratoren. Stellen Sie sicher, dass Sie Ihre Datenquelle (DSN) in der Administratorversion konfiguriert haben, die Ihrer SAS©-Version entspricht.

2. Neustart des Systems (Der „Reboot“-Faktor)

Manchmal ist die Lösung viel einfacher. Nach der Konfiguration neuer Umgebungsvariablen oder neuer System-ODBC-Quellen auf einem frisch installierten Rechner kann es vorkommen, dass diese Änderungen nicht sofort von allen Diensten berücksichtigt werden oder ein vorübergehender Konflikt den Zugriff auf den Treiber blockiert.

In mehreren dokumentierten Fällen reicht ein einfacher vollständiger Neustart des Computers aus, um die Situation zu „entsperren“. Wenn der klassische Neustart nicht funktioniert, kann ein „Kaltstart“ (vollständiges Herunterfahren, einige Sekunden warten, dann Neustart) erforderlich sein, um die Verbindungsdienste korrekt zurückzusetzen.

Wenn auf einem neuen Rechner der Fehler "Engine cannot be found" auftritt:

  1. Überprüfen Sie, ob Sie nicht versuchen, von einem 64-Bit-SAS© auf einen 32-Bit-DSN zuzugreifen (oder umgekehrt).

  2. Wenn die Architektur korrekt ist, starten Sie Ihren Computer neu. Dies ist oft der fehlende Schritt nach einer ersten ODBC-Konfiguration.