OLE DB-connectiviteit met SQL Server testen met behulp van een UDL-bestand
Van toepassing op: SQL Server
Notitie
Voordat u begint met het oplossen van problemen, controleert u de vereisten en doorloopt u de controlelijst.
In dit artikel wordt beschreven hoe u een UDL-bestand (Universal Data Link) maakt en verschillende providers gebruikt om de verbinding met een SQL Server-exemplaar via het bestand te testen.
Een UDL-bestand maken
Notitie
Met een UDL-bestand kunt u de connectiviteit van OLE DB-providers (Object Linking and Embedding Database) testen met elke back-enddatabase, onafhankelijk van een volledige toepassing. Als u een UDL-bestand opslaat, wordt er een goed opgemaakte verbindingsreeks gegenereerd, die u kunt gebruiken om de verbindingsreeks van een toepassing te bouwen of te controleren hoe u verschillende eigenschappen instelt. Als u de tekenreeks wilt ophalen, opent u het bestand in Kladblok.
Voer de volgende stappen uit om een UDL-bestand te maken om uw OLE DB-provider te testen:
Voer de volgende stappen uit om bestandsextensies in Bestandenverkenner weer te geven:
Selecteer Start en voer Bestandenverkenner Opties in.
Selecteer het tabblad Weergave , schakel de optie Extensies verbergen voor bekende bestandstypen uit en selecteer VERVOLGENS OK.
Navigeer naar de map waarin u een UDL-bestand wilt maken. Bijvoorbeeld c:\temp.
Maak een nieuw tekstbestand (zoals sqlconn.txt) en wijzig de extensie van .txt in .udl. (Selecteer Ja op het waarschuwingsbericht over het wijzigen van de bestandsnaamextensie.)
U kunt ook het volgende PowerShell-script gebruiken om sqlconn.udl te maken in de map %temp%.
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")
De verbinding testen met behulp van de OLE DB-provider van SQL Server
Microsoft OLE DB Provider voor SQL Server (SQLOLEDB) is de meest voorkomende provider. Het is ingebouwd in Windows en kan verbinding maken met elke versie van SQL Server die niet is geconfigureerd om TLS 1.2-kanaalbindingen te vereisen.
Microsoft OLE DB-stuurprogramma voor SQL Server (MSOLEDBSQL) is de nieuwste SQL Server OLE DB-provider. De provider heeft alle nieuwe functies, zoals TLS 1.2, MultiSubnetFailover en Azure-verificatieopties. We raden deze provider aan voor nieuwere SQL Server-databases.
Voer de volgende stappen uit om de verbinding te testen met behulp van de OLE DB-provider van SQL Server:
Open het .udl-bestand .
Selecteer het tabblad Provider , selecteer de SQL Server OLE DB-provider die u in uw toepassing gebruikt en selecteer vervolgens Volgende.
Geef op het tabblad Verbinding het netwerkprotocol, de FQDN (Fully Qualified Domain Name) en het poortnummer onder Een servernaam selecteren of invoeren. Bijvoorbeeld:
tcp:SQLProd01.contoso.com,1433
.Notitie
Op deze manier voor het invoeren van de servernaam voorkomt u enkele veelvoorkomende problemen (zoals problemen met de SQL Server Browser-service) die een verbinding kunnen verstoren.
Voer andere eigenschappen in op het tabblad Verbinding .
Notitie
Voor de meeste verbindingstests hoeft u geen databasenaam in te voeren.
Selecteer Verbinding testen.
U kunt ook andere tabbladen selecteren en andere stuurprogramma-instellingen verkennen. Wanneer de verbindingstest is voltooid, selecteert u OK om de verbindingsreeks op te slaan in een bestand.
Verbinding testen met behulp van Microsoft OLE DB-provider voor ODBC-stuurprogramma's
Als u ODBC-stuurprogramma's (Open Database Connectivity) wilt testen met behulp van Microsoft OLE DB-provider voor ODBC-stuurprogramma's, voert u de volgende stappen uit:
Open het .udl-bestand .
Selecteer Vervolgens Provider>Microsoft OLE DB-provider voor ODBC-stuurprogramma's.>
Op het tabblad Verbinding kunt u een van de volgende methoden gebruiken om de gegevensbron op te geven en vervolgens andere eigenschappen in te voeren.
Voer een waarde in het veld Naam van gegevensbron gebruiken in.
Voer een DSN-less-verbindingsreeks in, zoals
Driver={ODBC Driver 17 for SQL Server};Server=SQLProd01;Database=Northwind;Trusted_Connection=Yes
.
Selecteer Verbinding testen.
32-bits providers testen op 64-bits machines
Voer de volgende stappen uit om de verbinding van 32-bits providers in 64-bits besturingssystemen te testen:
Voer in het opdrachtpromptvenster de volgende opdracht uit om de 32-bits opdrachtprompt te openen:
%windir%\SysWoW64\cmd.exe
Voer de volgende opdracht uit om het UDL-bestand te openen:
c:\temp\test.udl
Als u Microsoft Jet 4.0 OLE DB Provider ziet op het tabblad Provider, betekent dit dat u het 32-bits dialoogvenster hebt geladen en nu de 32-bits provider kunt selecteren om de verbinding te testen.
Tips voor het oplossen van verbindingsproblemen
U kunt de volgende methoden gebruiken om te controleren waarom de verbinding mislukt.
- Wijzig de provider.
- Wijzig het protocol. Bijvoorbeeld
tcp:
,np:
oflpc:
. - Test de verbinding met of zonder het volledige domeinachtervoegsel of alleen het IP-adres.
- Verwijder het poortnummer en gebruik de naam van het exemplaar om de SQL Server Browser-service te testen.
Als voor elk van de bovenstaande methoden één combinatie werkt en een andere mislukt, kan dit een aanwijzing geven over het probleem. Als u bijvoorbeeld de tweede methode gebruikt en dit niet werkt lpc:
tcp:
, probeert u het TCP-protocol in te schakelen in SQL Server Configuration Manager.
Zie ook
UDL-configuratie (Universal Data Link)
Notitie
Als dit artikel uw probleem niet heeft opgelost, kunt u de verbindingsproblemen in SQL Server oplossen controleren voor meer hulp.