Testen der OLE DB-Konnektivität mit SQL Server mithilfe einer UDL-Datei

Gilt für: SQL Server

Hinweis

Bevor Sie mit der Problembehandlung beginnen, sollten Sie die Voraussetzungen überprüfen und die Checkliste durchgehen.

In diesem Artikel wird beschrieben, wie Sie eine UDL-Datei (Universal Data Link) erstellen und verschiedene Anbieter verwenden, um die Verbindung mit einer SQL Server instance über die Datei zu testen.

Erstellen einer UDL-Datei

Hinweis

Mit einer UDL-Datei können Sie ole DB-Anbieterkonnektivität (Object Linking and Embedding Database) mit jeder Back-End-Datenbank testen, unabhängig von einer vollständigen Anwendung. Beim Speichern einer UDL-Datei wird eine wohlgeformte Verbindungszeichenfolge generiert, mit der Sie die Verbindungszeichenfolge einer Anwendung erstellen oder überprüfen können, wie verschiedene Eigenschaften festgelegt werden. Öffnen Sie die Datei im Editor, um die Zeichenfolge abzurufen.

Führen Sie die folgenden Schritte aus, um eine UDL-Datei zum Testen Ihres OLE DB-Anbieters zu erstellen:

  1. Führen Sie die folgenden Schritte aus, um Dateierweiterungen in Explorer anzuzeigen:

    1. Wählen Sie Start aus, und geben Sie Explorer Optionen ein.

    2. Wählen Sie die Registerkarte Ansicht aus, deaktivieren Sie die Option Erweiterungen für bekannte Dateitypen ausblenden , und wählen Sie dann OK aus.

  2. Navigieren Sie zu dem Ordner, in dem Sie eine UDL-Datei erstellen möchten. Beispiel : c:\temp.

  3. Erstellen Sie eine neue Textdatei (z. B.sqlconn.txt), und benennen Sie die Erweiterung von .txt in .udl um. (Wählen Sie Ja aus, um die Warnmeldung zum Ändern der Dateinamenerweiterung anzuzeigen.)

    Sie können auch das folgende PowerShell-Skript verwenden, um sqlconn.udl in Ihrem Ordner %temp% zu erstellen.

    clear
    $ServerName = "(local)"
    $UDL_String = "[oledb]`r`n; Everything after this line is an OLE DB initstring`r`nProvider=MSOLEDBSQL.1;Integrated Security=SSPI;Persist Security Info=False;User ID=`"`";Initial Catalog=`"`";Data Source=" + $ServerName + ";Initial File Name=`"`";Server SPN=`"`";Authentication=`"`";Access Token=`"`""
    Set-Content -Path ($env:temp + "\sqlconn.udl") -Value $UDL_String -Encoding Unicode
    
    #open the UDL
    Invoke-Expression ($env:temp + "\sqlconn.udl")
    

Testen der Verbindung mithilfe des SQL Server OLE DB-Anbieters

Der Microsoft OLE DB-Anbieter für SQL Server (SQLOLEDB) ist der häufigste Anbieter. Es ist in Windows integriert und kann eine Verbindung mit jeder Version von SQL Server herstellen, die nicht so konfiguriert ist, dass TLS 1.2-Kanalbindungen erforderlich sind.

Microsoft OLE DB-Treiber für SQL Server (MSOLEDBSQL) ist der neueste SQL Server OLE DB-Anbieter. Der Anbieter verfügt über alle neuen Features wie TLS 1.2, MultiSubnetFailover und Azure-Authentifizierungsoptionen. Wir empfehlen diesen Anbieter für neuere SQL Server Datenbanken.

Führen Sie die folgenden Schritte aus, um die Verbindung mithilfe des SQL Server OLE DB-Anbieters zu testen:

  1. Öffnen Sie die UDL-Datei .

  2. Wählen Sie die Registerkarte Anbieter aus, wählen Sie den SQL Server OLE DB-Anbieter aus, den Sie in Ihrer Anwendung verwenden, und wählen Sie dann Weiter aus.

  3. Geben Sie auf der Registerkarte Verbindung das Netzwerkprotokoll, den vollqualifizierten Domänennamen (FQDN) und die Portnummer unter Servernamen auswählen oder eingeben an. Beispiel: tcp:SQLProd01.contoso.com,1433.

    Hinweis

    Diese Art der Eingabe des Servernamens vermeidet einige häufige Probleme (z. B. probleme mit dem SQL Server Browserdienst), die eine Verbindung beeinträchtigen könnten.

  4. Geben Sie auf der Registerkarte Verbindung weitere Eigenschaften ein.

    Hinweis

    Bei den meisten Verbindungstests müssen Sie keinen Datenbanknamen eingeben.

  5. Wählen Sie Verbindung testen aus.

Sie können auch andere Registerkarten auswählen und andere Treibereinstellungen erkunden. Wenn der Verbindungstest abgeschlossen ist, wählen Sie OK aus, um die Verbindungszeichenfolge in einer Datei zu speichern.

Testen der Verbindung mithilfe des Microsoft OLE DB-Anbieters für ODBC-Treiber

Führen Sie die folgenden Schritte aus, um ODBC-Treiber (Open Database Connectivity) mithilfe des Microsoft OLE DB-Anbieters für ODBC-Treiber zu testen:

  1. Öffnen Sie die UDL-Datei .

  2. Wählen Sie Anbieter>Microsoft OLE DB-Anbieter für ODBC-Treiber>Weiter aus.

  3. Auf der Registerkarte Verbindung können Sie eine der folgenden Methoden verwenden, um die Datenquelle anzugeben und dann andere Eigenschaften einzugeben.

    • Geben Sie einen Wert in das Feld Datenquellenname verwenden ein.

    • Geben Sie einen DSN-Verbindungszeichenfolge wie Driver={ODBC Driver 17 for SQL Server};Server=SQLProd01;Database=Northwind;Trusted_Connection=Yesein.

  4. Wählen Sie Verbindung testen aus.

Testen von 32-Bit-Anbietern auf 64-Bit-Computern

Führen Sie die folgenden Schritte aus, um die Verbindung von 32-Bit-Anbietern in 64-Bit-Betriebssystemen zu testen:

  1. Führen Sie im Eingabeaufforderungsfenster den folgenden Befehl aus, um die 32-Bit-Eingabeaufforderung zu öffnen:

    %windir%\SysWoW64\cmd.exe
    
  2. Führen Sie den folgenden Befehl aus, um die UDL-Datei zu öffnen:

    c:\temp\test.udl
    
  3. Wenn Microsoft Jet 4.0 OLE DB-Anbieter auf der Registerkarte Anbieter angezeigt wird, bedeutet dies, dass Sie das 32-Bit-Dialogfeld erfolgreich geladen haben und nun den 32-Bit-Anbieter auswählen können, um die Verbindung zu testen.

Tipps zur Behandlung von Verbindungsproblemen

Sie können die folgenden Methoden verwenden, um zu überprüfen, warum die Verbindung fehlschlägt.

  • Ändern Sie den Anbieter.
  • Ändern Sie das Protokoll. Beispiel: tcp:, np: oder lpc:.
  • Testen Sie die Verbindung mit oder ohne das vollständige Domänensuffix oder nur mit der IP-Adresse.
  • Entfernen Sie die Portnummer, und verwenden Sie den instance Namen, um den SQL Server-Browserdienst zu testen.

Wenn für jede der oben genannten Methoden eine Kombination funktioniert und eine andere fehlschlägt, könnte dies einen Hinweis auf das Problem geben. Wenn Sie z. B. die zweite Methode verwenden und wenn die lpc: nicht funktionierttcp:, versuchen Sie, das TCP-Protokoll in SQL Server-Konfigurations-Manager zu aktivieren.

Siehe auch

UDL-Konfiguration (Universal Data Link)

Hinweis

Wenn Ihr Problem in diesem Artikel nicht behoben wurde, finden Sie weitere Hilfe unter Behandeln von Konnektivitätsproblemen in SQL Server.