quinta-feira, 5 de agosto de 2010

Como se conectar ao SQL Server usando Windows Forms e C#

Nesta dica eu mostro como efetuar uma conexão ao banco de dados SQL Server. Aqui estou usando o SQL Server Express 2005, mas penso que a conexão deve funcionar na versão full do SQL Server com poucas alterações.

No primeiro código nós efetuamos uma conexão ao SQL Server Express usando a autenticação do Windows (Windows Authentication). Note que se a conexão for efetuada com sucesso nós teremos um objeto da classe SqlConnection para começar a enviar queries ao banco:


private void button1_Click(object sender, EventArgs e){
  // string de conexão
  string connString = @"server = .\sqlexpress;
    integrated security = true;";

  // vamos criar a conexão
  SqlConnection conn = new SqlConnection(connString);

  // a conexão foi feita com sucesso?
  try{
    // abre a conexão
    conn.Open();
    MessageBox.Show("A conexão foi efetuada com sucesso.");
  }
  catch(SqlException sqle){
    // ops! o que aconteceu?
    MessageBox.Show("Falha ao efetuar a conexão. Erro: " + sqle);
  }
}

Aqui nós obtemos a conexão com o banco de dados, mas, e a base de dados? Como nosso código saberá para qual base de dados os comandos SQL (queries) serão direcionados? A resposta é que podemos definir o nome da base de dados na string de conexão. Veja:

private void button1_Click(object sender, EventArgs e){
  // string de conexão
  string connString = @"server = .\sqlexpress;
    Database = locadora;
    integrated security = true;";

  // vamos criar a conexão
  SqlConnection conn = new SqlConnection(connString);

  // a conexão foi feita com sucesso?
  try{
    // abre a conexão
    conn.Open();
    MessageBox.Show("A conexão foi efetuada com sucesso.");
  }
  catch(SqlException sqle){
    // ops! o que aconteceu?
    MessageBox.Show("Falha ao efetuar a conexão. Erro: " + sqle);
  }
}

Neste trecho de códigos nós estamos nos conectando a uma base de dados chamada locadora. Veja que abrimos uma conexão com o banco de dados (e a base de dados desejada) usando o método Open() da classe SqlConnection. Quando não mais precisarmos da conexão nós devemos fechá-la usando o método Close().
by:splinter

Nenhum comentário: