2010-09-13 11 views
8

Używam Visual Studio 2008, a moją bazą danych jest SQL Server 2000.Błąd podczas dodawania połączenia w programie Server Explorer: "Nie można dodać połączenia danych." ExecuteScalar wymaga otwartego i dostępnego połączenia. "

Chcę dodać połączenie z eksploratorem serwera w VS. Źródłem danych jest Microsoft SQL Server (SqlClient). Po wprowadzeniu wszystkich moich informacji i kliknięciu Test Connection, proces się powiódł.

Ale gdy klikam OK, pojawia się błąd:

Nie można dodać połączenie danych. ExecuteScalar wymaga otwartego i dostępnego połączenia. Aktualny stan połączenia jest zamknięty.

+0

Uruchom ponownie komputer. –

+0

To działało ... Jaka jest historia? – Steven

+1

Nie wiem, tylko sugestię. –

Odpowiedz

11

Ponownie uruchom Visual Studio. Następnie uruchom ponownie komputer.

+7

VERT najpierw, to powinno wystarczyć –

+0

Dla mnie ponowne uruchomienie VS było wystarczające – Regfor

+0

To samo tutaj. Ponownie uruchomiono VS i wszystko poszło dobrze. Thanx! –

0

Możesz otworzyć Eksploratora serwerów (Widok -> Eksplorator serwera), aby ponownie podłączyć połączenie.

Możesz usunąć bieżące połączenie, aby ponownie otworzyć to samo.

0

Dla tych, którzy używają polecenia SQL i otrzymują błąd "Nie można dodać połączenia danych." ExecuteScalar wymaga otwartego i dostępnego połączenia. Aktualny stan połączenia jest zamknięty. " spróbuj tego:

 using (SqlConnection conn = new SqlConnection(connString)) 
     { 
      using (SqlCommand comm = new SqlCommand()) 
      { 
       // query to select all the rows whose column name is the same as id 
       comm.CommandText = "SELECT COUNT(*) from tableName where colName like @val1"; 
       comm.Connection = conn; 
       conn.Open(); // <---- adding this line fixed the error for me 
       comm.Parameters.AddWithValue("@val1", id); 
       // retrieve how many rows are returned after executing the query 
       count = (int)comm.ExecuteScalar(); // < --- where the error originally occurred 
      } 
     } 
Powiązane problemy