E-Book 650 Dicas e Truques de Python - PDF com 1.200 páginas
Você está aqui: C# ::: C# + Bancos de Dados ::: DbCommand

Entenda as classes DbCommand, OdbcCommand, OleDbCommand, OracleCommand, SqlCommand e SqlCeCommand

Quantidade de visualizações: 13428 vezes
A classe DbCommand é usada para representar uma instrução SQL ou stored procedure disparada com o propósito de inserir, atualizar, excluir ou listar informações do ou no banco de dados. Veja sua posição na hierarquia de classes da plataforma .NET:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

System.Object 
  System.MarshalByRefObject 
    System.ComponentModel.Component 
      System.Data.Common.DbCommand
        System.Data.Odbc.OdbcCommand 
        System.Data.OleDb.OleDbCommand 
        System.Data.OracleClient.OracleCommand 
        System.Data.SqlClient.SqlCommand 
        System.Data.SqlServerCe.SqlCeCommand

Esta classe (DbCommand) é uma classe abstrata que herda de Component e implementa as interfaces IDbCommand, IDisposable. Por ser abstrata, nós nunca a usamos diretamente. Em vez disso usamos OdbcCommand, OleDbCommand, OracleCommand, SqlCommand e SqlCeCommand.

A forma mais comum de se construir uma instância da classe DBCommand é usar o construtor que recebe uma string representando a instrução SQL e uma referência a um objeto da classe DbConnection (exemplo de construtor da classe SqlCommand, usada para enviar instruções SQL ao banco de dados SQL Server):

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

SqlCommand(String, SqlConnection)

Veja um exemplo completo no qual obtemos a conexão com o banco de dados e construímos um DbCommand para inserir um registro no banco de dados:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button6_Click(object sender, EventArgs e){
  // Dica: Se estiver usando SQL Server, troque "Odbc" por
  // "Sql"

  // obtém a conexão com o banco de dados
  OdbcConnection conn = ConexaoODBC.obterConexao();

  // instrução SQL para inserir um novo registro no banco
  // de dados
  string sql = "INSERT INTO clientes(id, nome, idade, cidade, " +
    "estado) values(0, 'Carlos Franco', 29, 'Curitiba', 'PR')";

  if(conn != null){
    // constrói o DBCommand
    OdbcCommand cmd = new OdbcCommand(sql, conn);

    // dispara a instrução SQL para inserir o novo 
    // registro
    int res = cmd.ExecuteNonQuery();

    // obtém o resultado da operação
    if(res > 0)
      MessageBox.Show("Registro inserido com sucesso.");
    else
      MessageBox.Show("O registro não foi inserido.");

    // fecha a conexão
    ConexaoODBC.fecharConexao();
  }
}

Neste exemplo eu me conectei a um banco de dados MySQL usando ODBC. Se estiver usando SQL Server, lembre-de de fazer as alterações necessárias. Outra observação importante é que o campo id da tabela clientes é auto-incremento. Assim, ao fornecer o valor 0, o valor do campo é incrementado da forma esperada.

Link para compartilhar na Internet ou com seus amigos:

C# ::: Windows Forms ::: DataGridView

Como ocultar ou exibir uma determinada coluna do DataGridView do C# Windows Forms

Quantidade de visualizações: 13545 vezes
Em algumas situações precisamos ocultar ou exibir determinadas colunas do DataGridView. Isso pode ser feito definindo-se os valores true ou false para a propriedade Visible da classe DataGridViewColumn. Veja um trecho de código no qual ocultamos a segunda coluna do DataGridView:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button3_Click(object sender, EventArgs e){
  // vamos ocultar a segunda coluna
  dataGridView1.Columns[1].Visible = false;
}

Veja que aqui nós acessamos a coleção DataGridViewColumnCollection e usamos um índice para retornar o DataGridViewColumn desejado. É possível também acessar um determinado DataGridViewColumn na coleção de colunas usando o valor definido para sua propriedade name. Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button3_Click(object sender, EventArgs e){
  // vamos ocultar a segunda coluna
  dataGridView1.Columns["populacao"].Visible = false;
}



C# ::: Coleções (Collections) ::: List<T>

Como percorrer os itens de uma List do C# usando o laço for

Quantidade de visualizações: 409 vezes
Em várias ocasiões nós precisamos percorrer os elementos de uma lista do C#. Para isso nós podemos usar o laço for e, dentro deste laço, acessar os elementos da lista individualmente usando o operador [] e o índice desejado.

Veja o código C# completo para o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

using System;
using System.Collections.Generic;

namespace Estudos {
  class Principal {
    static void Main(string[] args) {
      List<int> valores = new List<int>();

      // insere valores na lista
      valores.Add(4);
      valores.Add(2);
      valores.Add(87);
      valores.Add(23);
      valores.Add(100);

      // agora vamos usar o laço for para percorrer os
      // itens da lista
      Console.WriteLine("Os itens da lista são:");
      for(int i = 0; i < valores.Count; i++) {
        Console.Write(valores[i] + ", ");
      }

      Console.WriteLine("\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

Ao executar este código C# nós teremos o seguinte resultado:

Os itens da lista são:
4, 2, 87, 23, 100,


C# ::: Windows Forms ::: ListBox

Como excluir todos os itens de uma ListBox do C# Windows Forms usando a função Clear()

Quantidade de visualizações: 385 vezes
Em algumas situações nós precisamos limpar uma ListBox do C# Windows Forms, ou seja, excluir todos os seus itens de uma só vez em tempo de execução, enquanto o programa estiver rodando.

Esta tarefa pode ser realizada por meio de uma chamada ao método Clear() do objeto ObjectCollection da ListBox.

Veja um trecho de código no qual clicamos em um botão e removemos todos os itens da ListBox:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button2_Click(object sender, EventArgs e)
{
  // remove todos os itens da ListBox
  listBox1.Items.Clear();
}



C# ::: Windows Forms ::: TextBox

Como definir a cor do texto de uma caixa de texto TextBox do C# Windows Forms via código

Quantidade de visualizações: 12663 vezes
Nesta dica mostrarei como podemos usar a propriedade ForeColor da classe Control do C# Windows Forms para definir a cor do texto de um componente TextBox. Note que criei uma caixa de texto com o nome textBox1 e chamei o código que altera a cor do texto a partir do evento Click de um botão Button.

Veja o trecho de código a seguir:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button1_Click(object sender, EventArgs e) {
  // vamos definir o azul para a cor do texto
  textBox1.ForeColor = Color.Blue;
}



C# ::: Windows Forms ::: TextBox

C# Windows Forms Avançado - Como rolar as linhas de um TextBox para o fundo (parte inferior) usando a API do Windows

Quantidade de visualizações: 6763 vezes
Em algumas situações gostaríamos de rolar para baixo (fundo) o conteúdo de um TextBox de múltiplas. Para isso podemos usar a API do Windows, mais especificamente a mensagem WM_VSCROLL com o valor SB_BOTTOM para seu parâmetro wParam. O valor do parâmetro lParam é zero.

Veja um trecho de código que rola para baixo o conteúdo de um TextBox. Antes de executar este exemplo, tenha a certeza de ter um TextBox de múltiplas, com barras de rolagem e conteúdo que force o aparecimento das barras de rolagem.

Comece adicionando a linha:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

using System.Runtime.InteropServices;

na seção de usings do seu formulário ou classe. Em seguida adicione o trecho de código abaixo no corpo da classe, como um método:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

[DllImport("user32.dll", EntryPoint = "SendMessage", 
  CharSet = CharSet.Auto, SetLastError = true)]
private static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, 
  IntPtr wParam, IntPtr lParam);

Finalmente coloque o código abaixo no evento Click de um botão:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button2_Click(object sender, EventArgs e){
  // antes de executar este exemplo certifique-se de que
  // a propriedade Multiline do TextBox esteja definida
  // como true e a propriedade ScrollBars contenha o valor
  // Vertical ou Both
  textBox1.Multiline = true;
  textBox1.ScrollBars = ScrollBars.Vertical;
    
  // constante para a mensagem WM_VSCROLL
  const uint WM_VSCROLL = 0x115;
  // constante para o parâmetro wParam
  const int SB_BOTTOM = 7;
  
  // handle para a caixa de texto
  IntPtr handle = textBox1.Handle;
  IntPtr wParam = (IntPtr)SB_BOTTOM;
  IntPtr lParam = IntPtr.Zero;
  
  // vamos fazer com que o TextBox role para o fundo (parte inferior)
  SendMessage(textBox1.Handle, WM_VSCROLL, wParam, lParam);
}



Desafios, Exercícios e Algoritmos Resolvidos de C#

Veja mais Dicas e truques de C#

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais


© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 63 usuários muito felizes estudando em nosso site.