O Data Provider .NET Framework para SQL Server utiliza seu próprio protocolo para se comunicar com o SQL Server. É leve e apresenta bom desempenho porque é otimizado para acessar um SQL Server diretamente sem adicionar uma camada OLE DB ou Open Database Connectivity (ODBC).
Este é o número um para usar se você deseja que sua aplicação ou site .NET se conecte a um SQL Server.
Um objeto SqlConnection representa uma sessão única com uma fonte de dados SQL Server. Com um sistema de banco de dados cliente/servidor, é equivalente a uma conexão de rede com o servidor. SqlConnection é usado em conjunto com SqlDataAdapter e SqlCommand para aumentar o desempenho ao se conectar a um banco de dados Microsoft SQL Server.
Quando você cria uma instância de SqlConnection, todas as propriedades são definidas para seus valores iniciais.
Se o SqlConnection sair do escopo, ele não será fechado. Portanto, você deve fechar explicitamente a conexão chamando Close ou Dispose. Close e Dispose são funcionalmente equivalentes. Se o valor de pooling de conexões Pooling for definido como true ou yes, a conexão subjacente é devolvida ao pool de conexões. Por outro lado, se Pooling for definido como false ou no, a conexão subjacente com o servidor é realmente fechada.
Para garantir que as conexões sejam sempre fechadas, abra a conexão dentro de um bloco using. Fazendo isso, garante-se que a conexão seja automaticamente fechada quando o código sair do bloco.
Mais informações sobre esta biblioteca de classes podem ser encontradas na página do produto Microsoft.