Para termos o melhor desempenho possível, essa classe é desenvolvida para cada banco.

Deriva da classe DbConnection (namespace System.Data.Common) e da interface ICloneable (namespace System).

Algumas classes Connection são:

  • SqlConnection (namespace System.Data.SqlClient) - para conexão ao Microsoft SQL Server;
  • OleDbConnection (namespace System.Data.OleDb) - para conexão a qualquer banco de dados que suporte o padrão OleDB, como Microsoft Sql Server 7.0, Microsoft Access;
  • OracleConnection (namespace System.Data.OracleClient) - para conexão ao Oracle.

Devemos importar o namespace adequado para usar a classe SqlConnection (os exemplos desse post serão todos baseados no Microsoft SQL Server 2005 Express Edition - a versão grátis):

Visual Basic

Imports System.Data.SqlClient

C#

using System.Data.SqlClient;

A sintaxe da classe SqlConnection é:

Visual Basic

Public NotInheritable Class SqlConnection _
  Inherits DbConnection _
  Implements ICloneable

C#

public sealed class SqlConnection : DbConnection, ICloneable

Os principais membros da classe SqlConnection são:

  • Propriedades:
    • ConnectionString - String que possui os dados do SGBD, como nome do servidor, instância, banco, usuário, senha  e tipo de autenticação, dentre outros;
    • DataSource - Retorna o nome da instância do SQL Server;
    • Database - Retorna o nome do banco de dados;
    • ServerVersion - Retorna a versão do banco de dados;
    • State - Retorna o estado da conexão;
    • WorkstationId - Retorna o nome do computador que está acessando o banco.
  • Métodos:
    • Open - Abre a conexão entre o programa e o banco de dados;
    • Close - Fecha a conexão;
    • ChangeDatabase - Altera o banco de dados atual para uma conexão aberta;
    • CreateCommand - Retorna um objeto SqlCommand associado à conexão corrente.

Os construtores da classe SqlConnection são:

  • SqlConnection() - Cria uma instância (objeto) da classe;
  • SqlConnection(String) - Cria uma instância da classe, configurada de acordo com a string de conexão passada como argumento.

Como criar uma conexão (a):

Visual Basic

Dim objConnection as SqlConnection
objConnection = new SqlConnection()

C#

SqlConnection objConnection = new SqlConnection();

O valor 15 segundos é atribuído para a propriedade ConnectionTimeout e “” para as propriedades ConnectionString, DataSource e Database.


Como criar uma conexão (b):

Visual Basic

Dim strCon as String
strCon = "Data Source=NOTEBOOK\SQLEXPRESS;Initial Catalog=MASTER;" & _
  "Integrated Security=True;Connect Timeout=2"


Dim objConnection as SqlConnection
objConnection = new SqlConnection(strCon)

C#

String strCon = Dim strCon as String
strCon = @"Data Source=NOTEBOOK\SQLEXPRESS;Initial Catalog=MASTER;" +
  "Integrated Security=True;Connect Timeout=2";


SqlConnection objConnection = new SqlConnection(strCon);

Como abrir, ver o estado e fechar uma conexão:

Visual Basic

...
Dim estado as String
estado = objConnection.State.ToString() ''estado da conexão antes de abrí-la
objConnection.Open() ''abre a conexão
estado = objConnection.State.ToString() ''estado da conexão após abrí-la
objConnection.Close() ''fecha a conexão

C#

...
String estado = objConnection.State.ToString(); //estado da conexão antes de abrí-la
objConnection.Open(); //abre a conexão
estado = objConnection.State.ToString(); //estado da conexão após abrí-la
objConnection.Close(); //fecha a conexão

Baixe aqui um aplicativo exemplo em VB.NET ou C#.