Minicursos - C#

Gravando Dados no Banco


Bem, agora que já temos a base de dados criada e o conector .Net do MySQL instalado, vamos ver como gravar dados no MySQL a partir do C#.

O primeiro passo é inserir a referência ao MySQL no Solution Explorer. Conforme já explicado, basta clicar com o botão direito em References, depois em Add, Add Reference e selecioná-la na aba .Net. A figura abaixo ilustra como o componente será exibido depois de adicionado.

Gravando Dados no Banco

Agora vamos abrir o formulário de cadastro e começar a inserir os códigos que farão a comunicação com o banco. O primeiro passo é adicionar o namespace using MySql.Data.MySqlClient; no início do código.

Gravando Dados no Banco

Em seguida vamos criar as variáveis globais para acesso:

Gravando Dados no Banco

A variável do tipo MySQLConnection é responsável por efetuar a conexão com o banco. É através dela que serão enviados dados como usuário e senha para o acesso ao SGBD.

Já a variável do tipo MySQLCommand fará o armazenamento e o envio do comando que queremos executar.

Vejam como tudo é simples e intuitivo até aqui:
- MySQLConnection é responsável pela conexão.
- MySQLCommand é responsável pelo envio do comando.

Continuando...
Para que a variável minhaConexao, do tipo MySQLConnection, possa efetuar a conexão com o banco é necessário que ela saiba informações como: em qual computador está o banco (pois ele poderia não estar no mesmo computador onde a aplicação está), qual a base de dados que será utilizada, e qual o usuário e sua senha para acesso ao banco. Estes dados são passados a ela como parâmetros. O comando completo, a ser colocado já dentro do bloco de código de inicialização do formulário, será:

Gravando Dados no Banco

Explicando o MySQLConnection

Comentando este código enorme, que parece complicado, mas não é, teremos:

Gravando Dados no Banco

A etapa seguinte já deveria ser sobre inserir código no método Click do botão btnSalvar, mas existe um detalhe importante que deve ser observado antes disso. Temos um campo responsável por receber a data de nascimento do usuário. Devemos esperar que ele digite algo no formato dd/mm/aaaa, mas o campo Date do MySQL só recebe dados no formato aaaa/mm/dd, então devemos fazer essa conversão primeiro, para que não haja erro no momento da inserção de dados. Vou criar um método chamado formataData, que será acionado assim que o botão Salvar for clicado. O código do método será esse:

Gravando Dados no Banco

Abrir janela com código copiável

O método é bastante simples, mas fazendo um breve comentário, o que está acontecendo aí é o recebimento da data em formato brasileiro, em seguida acontece a separação do dia, mês e ano através do método Substring. Na sequência a variável dataUS concatena todas elas na ordem correta a ser enviada ao MySQL e a retorna.

Para receber o retorno desta função eu criei a variável dataFormatada, que já foi inserida na primeira linha do método Click do botão "Salvar", da seguinte forma:

string dataFomatada = formataData(txtDataNascimento.Text);

Agora que já temos a data formatada, podemos continuar. O código todo da função Click do botão Salvar ficará da seguinte forma:

Gravando Dados no Banco

Clique aqui para abrir uma janela com código copiável:

Agora vou comentar este código, que merece muita atenção, já que contém a montagem da nossa primeira string de comando SQL.

Gravando Dados no Banco

Continuando os comentários...

Gravando Dados no Banco

Eu comentei o código todo apenas para explicar o método por completo, mas o que nos interessa aí é a montagem do comando, pegando os dados a partir dos campos do formulário. Na verdade não há nenhuma grande novidade e, repetindo o que foi dito nos comentários, o foco deve ser colocado nas aspas, que é onde 90% dos erros acontecem.

Bem, mas agora vamos executar o código e ver se funciona...

Gravando Dados no Banco

Inseri alguns dados, cliquei em "Salvar" e recebi a mensagem de sucesso. Como programamos para que o sistema só exiba essa mensagem em caso de inserção bem sucedida, nenhum erro ocorreu, mas vou abrir o MySQL e dar um SELECT na tabela "cliente" apenas para demonstrar. Vejam abaixo o resultado:

Gravando Dados no Banco

Aí estão os dados corretamente inseridos no banco!

Ainda podemos melhorar um pequeno detalhe no formulário de cadastro de clientes. Como foi possível notar na execução de vocês, após a mensagem de sucesso, o formulário com os dados inseridos continua aberto, quando o ideal é que ele fosse fechado, para reduzir as chances do usuário tentar cadastrar dois usuários idênticos, o que geraria um erro de duplicação de chave primária no banco de dados. Para impedir isso é muito simples! Basta que adicionemos, após esse MessageBox, o comando Close(). O código deverá ficar assim:

Gravando Dados no Banco

Agora, após o usuário clicar em OK na caixa de mensagem que alertará sobre o sucesso da operação, o formulário de cadastro será automaticamente fechado e o programa retornará para sua tela principal.

Com isso encerramos a parte de inserção de dados. O que é importante guardar daqui é que os comandos de inserção são exatamente iguais a uma inserção pelo Console do MySQL. O que temos de diferente são as variáveis responsáveis por fazerem a conexão com o SGBD e o envio do comando, apenas isso! Na sequência, veremos como utilizar o famoso DataGridView, e com ele removeremos um usuário.



Notícias - Games

Atari VCS é finalmente lançado e surpreende

O Atari VCS foi lançado recentemente e trouxe suporte a praticamente todos os serviços de streaming de jogos já disponíveis. A única exceção foi por conta do Playstation Now, cujo suporte nativo não é oferecido, mas ele pode ser acessado através do modo PC do VCS, já que o console possui Googl...

Ler Notícia Completa

Conheça o Playstation 2 portátil criado por um brasileiro

Claudio Adriano decidiu criar uma versão portátil do console Playstation 2, da Sony. Inspirado no Nintendo Switch, o console ficou pronto depois de 2 anos de trabalho e algumas interessantes adaptações. Partindo de uma placa-mãe de um PS2 Slim, Claudio fez os encaixes necessários para que a pla...

Ler Notícia Completa

PS5 com SSDs não originais apresentam ótimo resultado

A última atualização do PS5 permite que se faça a expansão do armazenamento do console. Embora o aparelho exija características específicas para os dispositivos de expansão, como taxa de leitura de 5Gb/s, ele funciona surpreendentemente bem com SSDs de velocidades inferi...

Ler Notícia Completa

Capcom Pro Tour sofre o cancelamento de algumas etapas por conta do coronavírus

Em um comunicado ao público via redes sociais, a Capcom revelou que algumas etapas do Capcom Pro Tour foram removidas do calendário como precaução contra o surto de coronavírus pelo mundo...

Ler Notícia Completa

Conheça o Stadia: a incrível plataforma de streaming de games do Google

O Google deu o pontapé inicial para o que espera ser o futuro dos videogames: consoles e hardware em geral ficam em segundo plano, e os games rodam em qualquer dispositivo via streaming. A plataforma Stadia promete levar jogos para notebooks, TVs, celulares e muito mais. O projeto do Google se...

Ler Notícia Completa

Você sabia?

Até a primeira metade dos anos 90 era bastante comum que as trilhas sonoras dos games fossem criadas por mulheres e a responsável pelas músicas do clássico Street Fighter 2 foi Yoko Shimomura. Segundo ela, o ritmo "Tararirarin" da música tema do personagem Blanka, do Brasil, veio à sua cabeça enquanto ela estava no trem a caminho da Capcom.

Desde o seu lançamento, em 1985, o fantástico jogo Tetris vende pelo menos 70 milhões de unidades por ano em todo o mundo! Os dados são oficiais e fornecidos pela THQ, uma das distribuidoras do título.

A empresa Universal City Studios, detentora dos direitos autorais do King Kong, processou a Nintendo logo após o lançamento de Donkey Kong, pois segundo ela, o game violava os seus direitos. Ela venceu o processo e recebeu da Nintendo uma indenização de quase 2 milhões de dólares.

Instalar vários programas com o mesmo propósito, como editores de texto, reprodutores de músicas ou vídeos e até programas antívirus sobrecarregam o seu sistema operacional e ainda ocupam espaço desnecessário em seu HD. Tenha apenas um bom programa para cada função.

Ajude o Contém Bits com um cafezinho!

Se você gostou do artigo, se ele lhe foi útil de alguma maneira e você quiser ajudar o Contém Bits, saiba que é simples, fácil e rápido. Basta clicar na imagem do PayPal (ou no cafezinho) e seguir as instruções, em ambiente seguro e com o respaldo do Paypal. Eu agradeço muito! :)


Você gostará destes vídeos!