Runtime -fel 20599 "kan inte öppna SQL Server" i VB 6.0 är ett vanligt problem när du ansluter till en SQL Server -databas. Detta fel indikerar vanligtvis ett problem med anslutningssträngen, SQL Server -konfiguration eller nätverksanslutning. Här är en uppdelning av de möjliga orsakerna och hur man felsöker dem:
1. Problem med anslutningssträng:
* felaktigt servernamn: Dubbelkontrollera att servernamnet i din anslutningssträng matchar det faktiska servernamnet. Detta inkluderar instansnamnet om du använder en namngiven instans av SQL Server.
* Ogiltiga inloggningsuppgifter: Se till att du använder rätt användarnamn och lösenord för SQL Server -kontot med nödvändiga behörigheter.
* Fel databasnamn: Kontrollera att databasnamnet i anslutningssträngen är korrekt.
* saknas eller felaktigt förare: Om du inte använder standard SQL Server -drivrutinen, se till att den är korrekt installerad och refererad till i ditt projekt.
2. SQL Server -konfigurationsproblem:
* SQL Server Servicestatus: Se till att SQL Server -tjänsten körs på servermaskinen.
* brandväggsinställningar: Kontrollera att brandväggen på servern och eventuella mellanhandsenheter inte blockerar åtkomst till SQL Server på den konfigurerade porten (vanligtvis TCP -port 1433).
* Databasåtkomstbehörigheter: Se till att användarkontot du ansluter till har nödvändiga behörigheter för att komma åt den angivna databasen.
* namngivna instanser: Om du använder en namngiven instans, se till att instansen är korrekt konfigurerad i SQL Server Configuration Manager och att anslutningssträngen innehåller instansnamnet.
3. Problem med nätverksanslutning:
* Nätverksanslutning: Testa nätverksanslutningen mellan din VB 6.0 -applikation och SQL Server -maskinen.
* fjärråtkomst: Om du försöker ansluta på distans, verifiera att fjärråtkomst till SQL Server är aktiverad.
* IP -adresser: Kontrollera om det finns några problem med IP -adresserna som är involverade i anslutningen.
Felsökningssteg:
1. Kontrollera anslutningssträngen: Granska noggrant din anslutningssträng för alla skrivfel eller inkonsekvenser. Använd ett verktyg som SQL Server Management Studio för att testa anslutningssträngen innan du använder den i din VB 6.0 -kod.
2. Verifiera SQL Server Service: Öppna servicekonsolen (Start -> Run -> Services.msc) och se till att SQL Server -tjänsten körs. Om inte, starta det.
3. Kontrollera inställningar för brandvägg: Se till att brandväggen på SQL Server -maskinen och eventuella mellanhandsenheter tillåter anslutningar till SQL Server på den konfigurerade porten.
4. Testnätverksanslutning: Använd verktyg som ping eller telnet för att testa anslutning mellan din VB 6.0 -applikation och SQL Server -maskinen.
5. Verifiera databasbehörigheter: Använd SQL Server Management Studio för att bekräfta att användarkontot du använder har nödvändiga behörigheter för att komma åt databasen.
6. Granska SQL Server -konfiguration: Kontrollera SQL Server Configuration Manager för eventuella problem med namngivna instanser eller andra inställningar.
7. Run SQL Server Configuration Manager: I startmenyn skriver du "SQL Server Configuration Manager" och tryck på Enter. Granska inställningarna i chefen.
8. Försök med olika inloggningsuppgifter: Om du använder integrerad autentisering kan du prova att ansluta till en specifik SQL Server -inloggning för att utesluta problem med tillstånd.
9. Överväg felloggning: Aktivera detaljerad felloggning i din VB 6.0 -applikation för att samla in mer information om felet.
Exempelkod (VB 6.0):
`` VB
Dim cn som adoDB.connection
Ställ in CN =NYA ADODB.CONNECTION
CN.ConnectionString ="Leverantör =SQLOLEDB; Datakälla =YourServername; Initial Catalog =YourDataBaseName; Användar -ID =YourUserName; Password =YourPassword"
cn.open
'Dina SQL -uttalanden här
cn.Close
Ställ in CN =ingenting
`` `
Byt ut följande platshållare med dina faktiska värden:
* yourservername: Namnet på din SQL -server, inklusive instansnamnet om tillämpligt (t.ex. "MyServer \ MyInstance").
* YourDataBasename: Namnet på databasen du vill ansluta till.
* ditt användarnamn: Ditt SQL Server Logga in användarnamn.
* YourPassword: Ditt SQL Server -inloggningslösenord.
Kom ihåg att ge mer information om din miljö (SQL Server -version, nätverksinställning, etc.) för mer skräddarsydd hjälp.